Repository Framework

Help the project

Reach out us on Discord

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, 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:

Basic knowledge

CQRS and Repository are two sides of the same coin.

Framework abstractions

Design and nuget map

Framework design

Logic design and flow

The same flow is valid for ICommand/ICommandPattern and IQuery/IQueryPattern

Framework logic

Important!!!

Extends IRepositoryPattern<T> or IRepositoryPattern<T, TKey> or IRepositoryPattern<T, TKey, TState> but use during injection IRepository<T> or IRepository<T, TKey> or IRepository<T, TKey, TState>.

Extends IQueryPattern<T> or IQueryPattern<T, TKey> or IQueryPattern<T, TKey, TState> but use during injection IQuery<T> or IQuery<T, TKey> or IQuery<T, TKey, TState>.

Extends ICommandPattern<T> or ICommandPattern<T, TKey> or ICommandPattern<T, TKey, TState> but use during injection ICommand<T> or ICommand<T, TKey> or ICommand<T, TKey, TState>.

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

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