nArchitecture
                                
                                 nArchitecture copied to clipboard
                                
                                    nArchitecture copied to clipboard
                            
                            
                            
                        Inspired by Clean Architecture, nArchitecture is a monolith project which uses advanced techniques.
nArchitecture Project
💻 About The Project
As Kodlama.io, we decided to share examples of completed projects. Inspired by Clean Architecture, nArchitecture is a monolith project that showcases advanced development techniques. The project includes Clean Architecture, CQRS, Advanced Repository, Dynamic Querying, JWT, OTP, Google & Microsoft Auth, Role-Based Management, Distributed Caching (Redis), Logging (Serilog), Elastic Search, Code Generator and much more. By contributing, you can support the project and learn new things.
Built With
⚙️ Getting Started
To get a local copy up and running follow these simple steps.
Prerequisites
- .NET 7
Installation
- Clone the repo
git clone --recurse-submodules https://github.com/kodlamaio-projects/nArchitecture.git
- Configure appsettings.jsonin WebAPI.
- Run Update-Databasecommand with Package Manager Console in WebAPI to create tables in sql server.
- Run the following command to update submodules
git submodule update --remote
🚀 Usage
- Run example WebAPI project dotnet run --project src\rentACar\WebAPI
Analysis
- If not, Install dotnet tool dotnet tool restore.
- Run anaylsis command dotnet roslynator analyze
Format
- If not, Install dotnet tool dotnet tool restore.
- Run format command dotnet csharpier .
🚧 Roadmap
See the open issues for a list of proposed features (and known issues).
🤝 Contributing
Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the project and clone your local machine
- Create your Feature Branch (git checkout -b <Feature>/<AmazingFeature>')
- Develop
- Commit your Changes (git add . && git commit -m '<SemanticCommitType>(<Scope>): <AmazingFeature>') 💡 Check Semantic Commit Messages
- Push to the Branch (git push origin <Feature>/<AmazingFeature>)
- Open a Pull Request
Contributing on Core Packages With This Repo:
- Fork the nArchitecture.Core project
- Locate to src/corePackagespath (cd .\src\corePackages\)
- Add your forked nArchitecture.Core repository remote address (git remote add <YourUserName> https://github.com/<YourUserName>/nArchitecture.Core.git)
- Create your Feature Branch (git checkout -b <Feature>/<AmazingFeature>')
- Develop
- Commit your changes (git add . && git commit -m '<SemanticCommitType>(<Scope>): <AmazingFeature>') 💡 Check Semantic Commit Messages
- Push to the branch (git push <YourUserName> --set-upstream HEAD:refs/heads/<Feature>/<AmazingFeature>)
- Open a Pull Request
If your pull request is accepted and merged:
- Locate to src/corePackagespath (cd .\src\corePackages\)
- Switch to main branch git checkout main
- Locate root path /path (cd ..\..\)
- Pull repo and submodule git submodule update --remote
- Commit your changes (git add . && git commit -m 'build(corePackages): update submodule')
- Push to the Branch (git push origin <Feature>/<AmazingFeature>)
- Open a Pull Request
⚖️ License
Distributed under the MIT License. See LICENSE for more information.
📧 Contact
Project Link: https://github.com/kodlamaio-projects/nArchitecture
