Pettopia is a web application where members - be it shelters, rescue groups or just persons - can post animals up for adoption as well as help owners find their missing pets. Originally, this was the final year project for my degree, but I decided to share it here as more of a sample project.
REST API with DDD and CQRS implementation with a vertical slice architecture.
- ASP.NET Core 6 with C# 10
- SQL Server
- EF Core 6 as the ORM for write and read operations
- SmartEnum for strongly typed, feature rich enumerations
- MediatR for CQRS implementation
- FluentValidation for requests (commands and queries) validations
- MailKit for emailing
- Swashbuckle for Swagger API documentation
- Swashbuckle.FluentValidation for FluentValidation rules integration in Swagger
- XUnit for unit testing
- FluentAssertions for more readable test assertions
- Moq for mocking
- AutoFixture for easier test data generation