Skip to content

sergeycherkasovv/task-manager

Repository files navigation

Hexlet tests and linter status:

Actions Status

My tests and linter status:

my-actions

SonarQube:

Quality Gate Status Bugs Code Smells Coverage Duplicated Lines (%) Lines of Code Maintainability Rating Security Rating Technical Debt

Task Manager — это полнофункциональный REST API для системы управления задачами, разработанный на Spring Boot.

Проект включает в себя следующие основные сущности:

  • User — пользователь системы
  • Task — задача с возможностью назначения исполнителя и статуса
  • TaskStatus — статус задачи
  • Label — метки для категории задач

Возможности:

  • CRUD операции над сущностями
  • Привязка исполнителей, статусов и меток к задачам
  • Фильтрация задач по названию, исполнителю, статусу и меткам
  • Аутентификация пользователей и защита маршрутов

Технологии

Установка и запуск локально

  1. Клонировать репозиторий:
git [email protected]:sergeycherkasovv/java-project-99.git
cd java-project-99
  1. Запустить локально:
make start-prod
  1. Открыть в браузере
http://localhost:8080

username: [email protected]
password: qwerty
  1. OpenAPI(Swagger) документация
http://localhost:8080/swagger-ui.html
  1. Посмотреть доступные команды:
make help

🗂 Структура проекта

java-project-99
├── .github/                          # CI (GitHub Actions)
├── src/
│   ├── main/
│   │   ├── java/hexlet/code/         
│   │   │   ├── component/            # Наполнение БД и ключи
│   │   │   ├── config/               # Конфигурации Spring Security
│   │   │   ├── controller/           # REST контроллеры
│   │   │   ├── exception/            # Кастомные исключения
│   │   │   ├── handler/              # Глобальный обработчик исключений
│   │   │   ├── dto/                  # Классы DTO для передачи данных
│   │   │   ├── mapper/               # Маппинг между DTO и сущностями
│   │   │   ├── model/                # Модели: Task, Label, TaskStatus, User, AuthRequest
│   │   │   ├── repository/           # Репозитории Spring Data
│   │   │   ├── service/              # Сервисы (бизнес-логика)
│   │   │   ├── specification/        # Фильтрация задач
│   │   │   ├── util/                 # Security 
│   │   │   └── AppApplication.java   # Точка входа Spring Boot
│   │   └── resources/
│   │       └── application.yml       # Конфиги Spring
│   └── test/
│       └── java/hexlet/code/         
│           ├── controller/           # Интеграционные тесты
│           └── util/                 # Наполнение БД для тестов
├── build.gradle.kts                  # Gradle сборка (Kotlin DSL)
├── Makefile                          # Команды для сборки, запуска и тестов
└── README.md  

📮 Автор

Разработано в рамках обучения на Hexlet. Автор: sergeycherkasovv

Почта: [email protected]

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages