Повноцінний шаблон фулстек додатку для вивчення інфраструктури та Docker. Проект включає Next.js фронтенд, Nest.js бекенд та PostgreSQL базу даних, все піднімається через Docker Compose.
- Frontend: Next.js 14 з React Query та TypeScript
- Backend: Nest.js з TypeORM, Swagger документацією та валідацією
- Database: PostgreSQL 16 з автоматичною ініціалізацією
- Docker: Повна контейнеризація з Docker Compose
- Developer Experience: Hot reload, React Query DevTools, Swagger UI
- Docker та Docker Compose встановлені
- Make (опціонально, для зручності)
mate-setup/
├── frontend/ # Next.js додаток з React Query
├── backend/ # Nest.js API з TypeORM та PostgreSQL
├── docker-compose.yml # Оркестрація всіх сервісів
├── Makefile # Зручні команди для управління
└── README.md # Документація
-
Клонуйте репозиторій:
git clone <repository-url> cd mate-setup
-
Запустіть проект:
make up
Або без Make:
docker-compose up -d --build
-
Відкрийте в браузері:
- Frontend: http://localhost:3000
- Swagger документація: http://localhost:4000/api/docs
| Команда | Опис |
|---|---|
make up |
Підняти всі сервіси в фоновому режимі |
make down |
Зупинити всі сервіси |
make build |
Зібрати Docker образи |
make logs |
Перегляд логів всіх сервісів |
make logs-frontend |
Логи тільки фронтенду |
make logs-backend |
Логи тільки бекенду |
make logs-db |
Логи тільки бази даних |
make restart |
Перезапустити всі сервіси |
make clean |
Повне очищення (volumes, images, containers) |
make db |
Підключитися до PostgreSQL через psql |
make install |
Встановити залежності локально |
# Запуск
docker-compose up -d # Запустити в фоновому режимі
docker-compose up -d --build # Зібрати та запустити
# Зупинка
docker-compose down # Зупинити та видалити контейнери
docker-compose stop # Тільки зупинити
# Логи
docker-compose logs -f # Всі логи
docker-compose logs -f mate-backend # Логи конкретного сервісу
# Перезапуск
docker-compose restart # Всі сервіси
docker-compose restart mate-backend # Конкретний сервісФайл env.example містить приклад конфігурації.
- Swagger API: http://localhost:4000/api/docs - інтерактивна документація API
- React Query DevTools: доступні на фронтенді (іконка внизу екрану)
- Відкрийте http://localhost:4000/api/docs
- Оберіть потрібний ендпоінт
- Натисніть "Try it out"
- Введіть параметри та натисніть "Execute"
Вітаються pull requests! Для великих змін спочатку відкрийте issue для обговорення.
- Next.js Documentation
- Nest.js Documentation
- React Query Documentation
- TypeORM Documentation
- Docker Documentation
- Docker Compose Documentation
- Swagger Documentation
Якщо цей проект був корисним для вас, будь ласка, поставте зірку! ⭐