A full-stack .NET microservices e-commerce demo application built with Dapr and Tye.
CoolStore is a full-stack, containerized microservices demo application built with .NET Core, Dapr, and Tye. It simulates an e-commerce platform to demonstrate how to architect, develop, and deploy a distributed system using modern microservices patterns and tools. The project showcases service-to-service communication, state management, event-driven workflows, and observability in a practical context.
.NET developers and architects looking to learn or implement microservices architectures, especially those interested in using Dapr and Tye for building and managing distributed applications.
Developers choose CoolStore as a comprehensive, real-world reference implementation that combines .NET with cutting-edge microservices tools like Dapr and Tye, providing a hands-on example of best practices for building scalable, observable, and maintainable distributed systems.
A full-stack .NET microservices build on Dapr and Tye
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Demonstrates all key Dapr building blocks—service invocation, state management, pub/sub, and observability—in a single, cohesive example, as detailed in the Dapr Building Blocks table.
Models actual business workflows like checkout and inventory management with event-driven patterns, supported by screenshots and detailed use cases in the README.
Integrates distributed tracing with Zipkin and structured logging with Kibana, providing ready-to-use monitoring for debugging microservices interactions.
Leverages Tye to simplify local development, allowing easy startup and debugging of multiple services via 'tye run', as highlighted in the Try It section.
The README explicitly warns that it uses old libraries and cautions against production use, with the team focusing on a new version, indicating potential security and compatibility risks.
Requires installing and configuring multiple tools like Dapr, Tye, Docker, WSL2, and specific SDKs, which can be time-consuming and error-prone for newcomers.
Heavily reliant on the .NET ecosystem and Dapr runtime, making it less flexible for teams using other languages or preferring alternative service mesh solutions.