Skip to content

Prispajer/taskly

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📰 Taskly

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.


🧱 Technologie

  • .NET 8, ASP.NET Core, Entity Framework Core
  • PostgreSQL, Docker, Docker Compose
  • Swagger, xUnit, FluentValidation
  • Makefile (automatyzacja)
  • Architektura Clean Architecture:
    • Taskly.API
    • Taskly.Application
    • Taskly.Domain
    • Taskly.Infrastructure
    • Taskly.UnitsTests
    • Taskly.IntegrationTests

📂 Struktura projektu

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

🚀 Uruchamianie aplikacji

💻 Lokalnie (PostgreSQL)

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ę lokalnie

Usuwa całe dockerowe środowisko (API + baza PostgreSQL):

make postgres-down    # Zatrzymuje bazę PostgreSQL
make clean            # Usuwa pliki wygenerowane podczas budowania aplikacji

🧪 Testy jednostkowe

make test

🔧 Komendy (Makefile

make 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  

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published