Taskly to modularny system do zarządzania zadaniami (Todos), oparty na architekturze CQRS i Clean Architecture. Każdy przypadek użycia (use case) jest wydzielony jako osobny moduł, co zapewnia wysoką skalowalność, testowalność i przejrzystość kodu.
.NET 8,ASP.NET Core,Entity Framework CorePostgreSQL,Docker,Docker ComposeSwagger,xUnit,FluentValidationMakefile(automatyzacja)- Architektura Clean Architecture:
Taskly.APITaskly.ApplicationTaskly.DomainTaskly.InfrastructureTaskly.UnitsTestsTaskly.IntegrationTests
Taskly/
├── src/
│ ├── Taskly.API
│ │ # Minimal API — każdy endpoint jako osobny moduł (CreateTodo, DeleteTodo, itd.)
│ ├── Taskly.Application
│ │ # Warstwa aplikacyjna — CQRS: Commands, Queries, Handlers, Validators
│ │ # Każdy use case w osobnym folderze, zgodnie z zasadą SRP
│ ├── Taskly.Domain
│ │ # Encje domenowe (np. Todo)
│ ├── Taskly.Infrastructure
│ │ # EF Core, repozytoria, konfiguracje, migracje
│ │ # Implementacja interfejsów z Application
│ ├── Taskly.SharedKernel
│ │ # Typy wspólne: Result<T>, Error, ErrorType
│ │ # Mechanizm komunikacji między warstwami (Success/Failure)
│
├── tests/
│ ├── Taskly.UnitTests
│ │ # Testy jednostkowe — walidatory, handlery, logika domenowa
│ ├── Taskly.IntegrationTests
│ │ # Testy integracyjne — endpointy, flow aplikacyjny, MediatR pipeline
│
├── Makefile
│ # Automatyzacja CLI: build, run, test, migracje, docker-compose
│
├── Dockerfile / docker-compose.yml
│ # Gotowe środowisko: API + PostgreSQL
│
└── README.md
# Dokumentacja projektu, uruchamianie, endpointy, komendy, testy
Uruchamia całe lokalne środowisko (API + baza PostgreSQL):
make build # Buduje projekt
make postgres-up # Uruchamia bazę PostgreSQL w Dockerze
make migrate-db # Tworzy migrację EF Core
make update-db # Wprowadza migrację do bazy danych
make run-app # Uruchamia aplikację lokalnieUsuwa całe dockerowe środowisko (API + baza PostgreSQL):
make postgres-down # Zatrzymuje bazę PostgreSQL
make clean # Usuwa pliki wygenerowane podczas budowania aplikacji🔗 Swagger UI: http://localhost:5291/swagger
make testmake build Twórzy projekt
make run-app Uruchamia aplikację
make test Uruchamia testy jednostkowe
make add-migration Tworzy migrację EF Core
make update-db Wprowadza migrację do bazy danych
make docker-build Buduje obraz Dockera
make docker-run Uruchamia API jako kontener
make docker-compose-up Uruchamia API + DB (Compose)
make docker-compose-down Zatrzymuje kontenery
make clean Czyści artefakty builda