Introduction
Capstone #5: ShopNest Tasks API — full Clean Architecture + CQRS + JWT refresh + FluentValidation + Redis + Serilog + health checks + Docker + GitHub Actions + Postman collection.
After this article you will
- Implement all four Clean Architecture layers
- CQRS boards/lists/cards with MediatR
- JWT + refresh token auth
- Serilog to Seq; health checks
- CI/CD pipeline YAML
Prerequisites
- Article 68 — Job Portal Full Stack
- Articles 1–64 ShopNest foundations (MVC, EF Core, API, auth, deploy)
Architecture & design
Solution structure from Article 44. Commands: CreateBoard, MoveCard, AssignUser. Queries: GetBoardDetail with Redis cache.
public record MoveCardCommand(Guid CardId, Guid TargetListId, int Order)
: IRequest<Unit>;Hands-on build guide — ShopNest Task Management API (Trello Clone)
- Domain: Board, TaskList, Card, UserAssignment.
- Full MediatR handlers + FluentValidation.
- Postman collection export for all endpoints.
- docker-compose: api + sql + redis + seq.
- GitHub Actions from Article 62.
Common pitfalls
- Skipping integration tests on auth flows.
- Card move without transaction — orphaned order indices.
Interview & portfolio questions
Q: Why Clean Architecture for API?
A: Testable domain, swappable infrastructure — interview gold for 2–4 YOE roles.
Summary
- Ultimate backend portfolio project for ShopNest track
- Every enterprise pattern from Articles 44–62 in one repo
- Postman + Docker + CI = interview demo ready
Previous: Job Portal Full Stack
Next: Real-Time Chat App
FAQ
Postman team share?
Export v2.1 JSON; commit to repo docs folder.
Seq local?
Docker image datalust/seq for structured log UI.