Skip to content

BhangeeF16/dot-net-6-api-cqrs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Broiler Plate (Minimal API)

project-image

This repository houses a .NET 6-based API project that serves as a foundational template for creating CQRS (Command Query Responsibility Segregation) based applications. It incorporates several essential functionalities and features aimed at expediting the development process while maintaining a structured and scalable architecture.

🧐 Features

Here're some of the project's best features:

  • Minimal API using CQRS /MediatR
  • Implemented Pipeline of Middlewares
  • Implemented Application Settings
  • Seeded Role and Default Admin User
  • Current User Service Implementation: The project includes a robust Current User Service to manage user-related operations efficiently.
  • Middleware Pipeline: A well-structured pipeline of middlewares is implemented to handle various request/response processing stages effectively.
  • SMTP Credentials Integration: SMTP credentials are integrated into the project to facilitate email functionalities.
  • Role and Default Admin User Seeding: The initial setup includes seeding of roles and a default admin user for quick start and testing purposes.
  • Twilio API Integration: Integration with Twilio API is added to support OTP generation and other SMS-related functionalities.
  • User Related API Endpoints: Essential API endpoints related to user management are implemented, providing necessary functionalities for user operations.


🛠️ Installation Steps:

1. Clone the repo ```git clone https://github.com/BhangeeF16/dot-net-6-api-cqrs.git```

2. Configure necessary environment variables such as SMTP credentials, Twilio API keys, etc.

3. Add DB Migration ```add-migration init```

4. Run the project and explore the implemented functionalities and endpoints.

5. Customize and extend the base project according to your specific application requirements.

Requirements

  • .NET 6 SDK
  • IDE or text editor of your choice (e.g., Visual Studio, Visual Studio Code)

🍰 Contribution Guidelines:

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.

  • If you have suggestions for adding or removing projects feel free to open an issue to discuss it or directly create a pull request after you edit the README.md file with necessary changes.
  • Please make sure you check your spelling and grammar. Create individual PR for each suggestion. Please also read through the Code Of Conduct before posting your first idea as well.

Creating A Pull Request

  • Fork the Project Create your Feature Branch (git checkout -b feature/AmazingFeature)
  • Commit your Changes (git commit -m 'Add some AmazingFeature')
  • Push to the Branch (git push origin feature/AmazingFeature) Open a Pull Request

License

This project is licensed under the MIT License.

Acknowledgements

Special thanks to the contributors and open-source community for their valuable contributions and resources.

💻 Built with

Technologies used in the project:

  • .NET 6

💖Like my work?

Email: bngf16@gmail.com