Paulovich.Caju
0.4.1
See the version list below for details.
dotnet new install Paulovich.Caju::0.4.1
Caju: .NET apps with awesome architectures!
Service Template to help you build evolvable and maintainable applications. It follows the principles from the Clean Architecture book and built on Domain-Driven Design. This tool increases productivity on developing your next microservices.
Generate your own awesome Back-end!
To generate your own awesome .NET Back-end simple run:
dotnet new -i Paulovich.Caju::0.4.0
dotnet new clean
The Architecture Styles
We prevent our software to be coupled from technology details like User Interface, Data Access frameworks, Service Bus or Web Servers. And there are some concepts that guided us:
- Allow an application to equally be driven by users, programs, automated test or batch scripts, and to be developed and tested in isolation from its eventual run-time devices and databases.
- The SOLID principles are all over the the solution.
- The software implementation is agnostic from technology, framework, or database. The result is focus on the use cases with input/output ports.
- Designed around the Business Domain, having Continous Delivery and Independent Deployment.
Sample applications
Run dotnet new -i Paulovich.Caju
then try the following commands.
Clean Architecture Solution with basic use cases:
dotnet new clean --use-cases basic
Hexagonal Architecture Solution with all use cases:
dotnet new hexagonal --use-cases full
Empty Event-Sourcing Solution:
dotnet new eventsourcing` --use-cases empty
For olher solution types check out the Caju Samples folder.
Switches
There are switches to generate your awesome application with your needs. Try after dotnet new clean
or dotnet new hexagonal
or dotnet new eventsourcing
:
- --use-cases
full
basic
readonly
none
- --user-interface
webapi
none
- --data-access
mongo
entityframework
dapper
none
- --service-bus
kafka
none
- --tips
true
false
- --skip-restore
true
false
Use the switch --help
for the complete list of options.
Roadmap
- Allow to choose the architecture style
- Allow to choose the built-in
- Full set of use cases
- Basic set of use cases
- Read Only
- None
- Allow to choose the data access frameworks
- MongoDB
- Dapper
- Entity Framework Core
- Azure Cosmos DB
- NHibernate Core
- None
- Allow to choose the UI frameworks
- Both
- WebAPI
- Console
- None
- Allow to choose the Service Bus frameworks
- Kafka
- Azure Event Bus
- None
- Allow to skip the dotnet restore after code generation
- Allow to include or to remove the architecture tips
Common Issues
Check your .NET Core SDK. Our features are only supported in 2.1.4
SDK or plus.
$ dotnet --version
2.1.4
This package has no dependencies.
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 |
---|---|---|
0.7.3 | 5,258 | 9/22/2019 |
0.7.2 | 1,785 | 9/22/2019 |
0.7.1 | 1,688 | 9/22/2019 |
0.7.0 | 1,922 | 9/22/2019 |
0.6.0 | 3,501 | 7/11/2018 |
0.5.0 | 2,378 | 5/13/2018 |
0.4.4 | 2,187 | 5/13/2018 |
0.4.2 | 2,346 | 4/26/2018 |
0.4.1 | 2,216 | 4/25/2018 |
0.4.0 | 2,351 | 4/19/2018 |
0.3.3 | 2,155 | 4/18/2018 |
0.3.2 | 2,166 | 4/18/2018 |
0.3.1 | 2,225 | 4/10/2018 |
0.3.0 | 2,180 | 4/10/2018 |
0.2.98 | 2,238 | 4/9/2018 |
0.2.97 | 2,134 | 4/8/2018 |
0.2.96 | 2,051 | 4/8/2018 |
0.2.94 | 2,305 | 4/8/2018 |
0.2.93 | 2,179 | 4/8/2018 |
0.2.91 | 2,329 | 4/8/2018 |
0.2.90 | 2,189 | 4/7/2018 |
0.2.86 | 2,142 | 4/7/2018 |
0.2.85 | 1,969 | 4/5/2018 |
0.2.84 | 2,134 | 4/2/2018 |
- Architecture style documentation
- Clean, Hexagonal or Event-Sourcing architecture styles
- Entity Framework Core; Dapper; MongoDB Data Access frameworks
- Different sets of use-cases.
- Kafka as service-bus for Event-Sourcing
- WebAPI templates
- Docker images optimized for startup
- Layerd application with Domain, Application, Infrastructure and UI
- Domain-Driven Design (Aggregates, Entities, Value Objects, Commands, Domain Events)