Repository Framework
Help the project
Reach out us on Discord
Contribute: https://www.buymeacoffee.com/keyserdsoze
Showcase (youtube)
Showcase (code)
Rystem.RepositoryFramework allows you to use correctly concepts like repository pattern, CQRS, DDD and automated REPR (Request-Endpoint-Response) Pattern. You have interfaces for your domains, auto-generated api, auto-generated HttpClient to simplify connection "api to front-end", a functionality for auto-population in memory of your models, caching, a functionality to simulate exceptions and waiting time from external sources to improve your implementation/business test and load test.
Document to read before using this library: - Repository pattern, useful links: - Microsoft docs - Repository pattern explained - CQRS, useful links: - Microsoft docs - Martin Fowler - DDD, useful links: - Wikipedia - Microsoft docs - REPR (Request-Endpoint-Response) Pattern - MVC as Dinasours
Basic knowledge
CQRS and Repository are two sides of the same coin.
Design and nuget map
Logic design and flow
The same flow is valid for ICommand/ICommandPattern and IQuery/IQueryPattern
Important!!!
Extends and use IRepository<T, TKey>
and not IRepositoryPattern<T>
Extends and use IQuery<T, TKey>
and not IQueryPattern<T>
Extends and use ICommand<T, TKey>
and not ICommandPattern<T>
Abstractions (Domain)
You may find the documentation at this link
In memory integration (Infrastructure for test purpose, load tests or functionality tests)
You may find the documentation at this link
Migration tools (Tool to help during a data migration)
You may find the documentation at this link
Api.Server (Application for automatic integration of api endpoint for your repository or CQRS)
You may find the documentation at this link
Api.Client (Application for http client integration of api endpoint for your repository or CQRS)
You may find the documentation at this link
Azure TableStorage integration (default integration)
You may find the documentation at this link
Azure CosmosDB SQL integration (default integration)
You may find the documentation at this link
Azure BlobStorage integration (default integration)
You may find the documentation at this link
Dynamics Dataverse integration (default integration)
You may find the documentation at this link
Entity Framework integration (default integration)
You may find the documentation at this link
MsSql integration (default integration)
You may find the documentation at this link
Cache integration (with in memory default integration)
You may find the documentation at this link
Cache with Azure BlobStorage integration (default integration)
You may find the documentation at this link
Web UI for dashboard
You may find the documentation at this link
Client Api for Typescript/Javascript solutions
You may find the documentation at this link