Zadachnik – это система управления задачами, разработанная с использованием Kotlin и Spring Boot для бэкенда и React с TypeScript для фронтенда. Система позволяет создавать, редактировать, удалять и просматривать задачи. Реализована поддержка аутентификации и авторизации пользователей, ролевая система, а также API для работы с задачами.
- Создание, редактирование, удаление и просмотр задач
- Управление статусами и приоритетами задач
- Назначение исполнителей задач
- Добавление комментариев к задачам
- Фильтрация и пагинация списка задач
- Аутентификация и авторизация пользователей через JWT
- Разграничение прав доступа (администратор, пользователь)
- API-документация с помощью Swagger UI
- Отображение списка задач с фильтрацией и пагинацией
- Создание, редактирование и удаление задач
- Управление статусами задач
- Добавление и просмотр комментариев к задачам
- Адаптивный дизайн для различных устройств
- Аутентификация и авторизация через JWT
- Язык: Kotlin
- Фреймворк: Spring Boot
- Безопасность: Spring Security, JWT
- База данных: PostgreSQL
- Документация API: OpenAPI, Swagger UI
- Система контейнеризации: Docker, Docker Compose
- Тестирование: JUnit, Mockito, TestContainers
- Миграции базы данных: Liquibase
- Логгирование: AOP (Aspect-Oriented Programming)
- Покрытие тестами: JaCoCo (80%+)
- CI/CD: GitHub Actions
- Язык: TypeScript
- Библиотека UI: React
- Управление состоянием данных: React Query
- Маршрутизация: TanStack Router
- Компоненты: shadcn/ui
- Сборка: Vite
- Тестирование: Jest, React Testing Library
- Docker и Docker Compose
- Node.js (для фронтенда) или npm (для фронтенда без Node.js)
- Gradle (если запуск бэкенда без контейнеризации)
-
Клонирование репозитория
git clone https://github.com/forafox/Zadachnik.git
-
Создание .env файла
cp .env.example .env
-
Запуск в режиме разработки
make dev-up
-
Остановка сервиса
make dev-down
-
Запуск базы данных PostgreSQL отдельно
make dev-up-postgres
-
Сборка образов
make build-backend
-
Запуск в продакшн режиме
make prod-up
-
Остановка продакшн окружения
make prod-down
Запуск тестов осуществляется командой:
cd backend && ./gradlew test