This repository showcases a sample API built with .NET 8 that demonstrates the integration of .NET Aspire orchestration. The application utilizes Marten as its document database on PostgreSQL, and Redis for caching, all while leveraging gRPC for efficient communication. Together, these components provide a robust foundation for scalable web APIs.
To get a local copy up and running, follow these simple steps.
- .NET 8 SDK
- Docker
- Clone the repo
git clone https://github.com/poorna-soysa/grpc-demo.git
- Navigate to the project directory
cd grpc-demo
- Restore dependencies:
dotnet restore
This template follows the Vertical Slice Architecture, which organizes code by features rather than technical concerns. Each feature is self-contained, promoting high cohesion and low coupling.
- Built with .NET 8: Utilizes the latest features for efficient development.
- .NET Aspire: Optimized for cloud-native applications.
- gRPC: Efficient communication protocol for service interactions.
- Marten: Document database for flexible data storage.
- PostgreSQL: Powerful relational database for data storage.
- Redis: Caching solution for improved performance.
- Health Check: Standardized approach for monitoring and assessing the operational status of systems.
- .NET 8
- gRPC
- .NET Aspire
- PostgreSQL
- Marten
- Redis
- EF Core
Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
- 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
) - Create a Pull Request
Distributed under the MIT License. See LICENSE
for more information.
If you find this project helpful, consider buying me a coffee!