To jest profesjonalne API do zarządzania przepisami na koktajle, zbudowane w oparciu o framework NestJS. Projekt został zaprojektowany z myślą o skalowalności, bezpieczeństwie danych oraz przejrzystej dokumentacji.
- Zarządzanie Składnikami i Koktajlami: Pełne operacje CRUD.
- Relacja Many-to-Many: Zaawansowany model łączący składniki z drinkami wraz z ilościami (tabela pośrednia).
- Paginacja, Filtrowanie i Sortowanie: Wydajne pobieranie danych z metadanymi, wyszukiwanie po nazwie oraz sortowanie alfabetyczne.
- Dokumentacja Swagger: Interaktywny interfejs API dostępny pod adresem
/api. - Globalny Reset: Specjalny endpoint do czyszczenia bazy danych (przydatny w środowisku dev).
- Walidacja Danych: Pełna kontrola typów za pomocą DTO i class-validator.
Poniżej znajduje się schemat relacyjny bazy danych wykorzystanej w projekcie.
- Framework: NestJS
- Baza Danych: PostgreSQL (działający w kontenerze Docker)
- ORM: TypeORM
- Dokumentacja: Swagger (OpenAPI 3.0)
- Narzędzia: Docker, TypeScript, npm
Pobierz repozytorium na swój komputer i zainstaluj zależności:
git clone https://github.com/smigiska/solvro-cocktail-api.git
cd solvro-cocktail-api
npm installProjekt korzysta z PostgreSQL. Upewnij się, że masz zainstalowany i włączony Docker, a następnie wykonaj:
docker-compose up -dGdy baza danych działa, uruchom serwer w trybie deweloperskim:
npm run start:devSerwer będzie dostępny pod adresem: http://localhost:3000
- Swagger UI: Wejdź na http://localhost:3000/api, aby przetestować wszystkie endpointy bezpośrednio w przeglądarce.
- Pliki HTTP: W folderze głównym znajdziesz pliki
.http(np.seed.http), które pozwalają na szybkie wypełnienie bazy testowymi danymi.
