Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/guilhermestracini/cqrs-boilerplate-dotnet

💡 🏗️ A boilerplate CQRS (API + Worker) template for .NET
https://github.com/guilhermestracini/cqrs-boilerplate-dotnet

api api-rest boilerplate boilerplate-dotnet boilerplate-template command cqrs cqrs-worker cs csharp hacktoberfest query worker

Last synced: 2 months ago
JSON representation

💡 🏗️ A boilerplate CQRS (API + Worker) template for .NET

Awesome Lists containing this project

README

        

# CQRS (API + Worker) boilerplate template

💡 🏗️ A boilerplate CQRS (API + Worker) template for .NET

---

## About

This is a **template repository** that sets the basic code and infrastructure for a repository/solution in **.NET C#** to create a **CQRS project with API and worker**.

> [!Note]
>
> A [appveyor.yml](appveyor.yml) file is included for [AppVeyor](https://www.appveyor.com/) CI pipeline.
> AppVeyor is free for open-source projects.
> For closed-source projects, consider a paid subscription or other CI tools (GitHub Actions, CircleCI, TeamCity).

---

## Instructions

> [!Warning]
>
> The automated process listed below now supports **Windows** and **Linux/MAC** environments.

### Automated process

- Click on the green button **USE THIS TEMPLATE**.
- Give a name to your new project/repository.
- Clone your newly created repository to your machine.
- Execute/run the file `initial-setup.bat` or `initial-setup.ps1` or `initial-setup.sh` and follow the instructions on the prompt/terminal.

### Manual process

- Click on the green button **USE THIS TEMPLATE**.
- Give a name to your new project/repository.
- Clone your newly created repository to your machine.
- Delete this file (`README.md`) and rename `README.template.md` to `README.md`.
- Change the `appveyor.yml` with your **tokens** (use secure tokens) or use your preferred CI tool (Circle CI, GitHub Actions, Jenkins, Team City, Azure DevOps).
- Change `SolutionName.sln` to your solution/project name.
- Change project name (`SolutionName.csproj`, `SolutionName.Tests.csproj`, `SolutionName.IntegrationTests.csproj`) and namespace inside directories `Src` and `Tests`.
- Change the *main project* reference in the tests project in files `Tests/SolutionName.Tests.csproj` and `Tests/SolutionName.IntegrationTests.csproj`.
- Fix in the `README.md` the path of the badges. (change all *{username}/{repo}* tokens with your own data).
- Add to `README.md` usage instructions of your client/SDK.
- Update `_config.yml` with project details (github.io docs website).

---

## License

Licensed under: **MIT license** ([LICENSE](https://github.com/guibranco/cqrs-boilerplate-dotnet/blob/main/LICENSE) or [http://opensource.org/licenses/MIT](http://opensource.org/licenses/MIT)).

This will also be your project's **LICENSE**, but you can change it to another one that suits your needs.