dotnet add package Constellation.Foundation.Mvc.Patterns --version
NuGet\Install-Package Constellation.Foundation.Mvc.Patterns -Version
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Constellation.Foundation.Mvc.Patterns" Version="" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Constellation.Foundation.Mvc.Patterns --version
#r "nuget: Constellation.Foundation.Mvc.Patterns,"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Constellation.Foundation.Mvc.Patterns as a Cake Addin
#addin nuget:?package=Constellation.Foundation.Mvc.Patterns&version=

// Install Constellation.Foundation.Mvc.Patterns as a Cake Tool
#tool nuget:?package=Constellation.Foundation.Mvc.Patterns&version=

Requires Sitecore 10.3
Requires .NET Framework 4.8

Constellation is a collection of utilities for .NET CMS implementers.

The Foundation.Mvc.Patterns library is an opinionated library that provides some base Controller and Repository classes for jumpstarting
a Sitecore project. The purpose is to get developers to better separate data access logic from controllers and also to hide some uninteresting concerns.

Repositories: Classes which accept a context to specify the conditions for accessing data in Sitecore along with facts for use in the query. The Repository
is responsible for getting the results of a query, any caching, and any transformation into ViewModel output.

Base Repositories:
Repository - Just the basics of setting up the relationship between the repository and the controller.
CachingRepository - Adds caching of the repository's output to the mix.
SingleItemRepository - Includes both of above and is centered around queries that will retrieve a single Item.
ItemListRepository - Includes the first two and is centered around queries taht will retrieve multiple Items.

Controllers: Classes which are responsible for handling the transition from Sitecore to the View, including setting up a Repository Context, and getting the
results from the Repository for sending to the View.

Base Controllers:
DatasourceRenderingController - Use when a Rendering has a Datasource Item and that Item is what's being rendered.
ItemListController - Use when a Rendering will present a number of Items that have to be looked up in some fashion.

On Sitecore startup, this package will scan all assemblies for IController and IRepository implementations and automatically add them to Dependency Injection.
This feature can be disabled/changed via the config file for this package.

Product Compatible and additional computed target framework versions.
.NET Framework net48 is compatible.  net481 was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated 753 6/16/2023 2,201 11/15/2021 1,465 3/4/2021 1,783 11/20/2020 857 8/18/2020 906 8/5/2020 837 8/4/2020 940 7/27/2020 1,020 7/27/2020 1,246 12/20/2019 982 12/10/2019 951 10/26/2019 917 10/8/2019 973 6/4/2019 938 5/30/2019 981 5/29/2019 952 4/29/2019 980 4/11/2019 992 3/6/2019 1,022 2/1/2019 1,020 2/1/2019 1,128 12/10/2018 1,056 12/7/2018 1,046 11/7/2018 1,036 11/5/2018
9.0.1 1,089 10/29/2018
9.0.0 1,082 10/29/2018

Updated Sitecore minimum reference to 10.3