Skip to content

basementdoor/java-kanban

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

java-kanban

Простой REST-менеджер (Kanban-трекер) задач, построенный на основе Java HttpServer (com.sun.net.httpserver).
Поддерживает управление Task, Epic и Subtask с приоритизацией, историей просмотров и валидацией пересечения времени задач.

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

  • REST API для управления:
    • Task
    • Epic
    • Subtask
  • Приоритизация задач
  • Отслеживание истории просмотров
  • Проверка пересечений задач по времени
  • JSON-сериализация через Gson
  • Кастомные адаптеры для LocalDateTime и Duration
  • Хранение данных в памяти (in-memory) / в файле (File)

🛠 Стек технологий

  • Java 17+
  • Встроенный HttpServer
  • Gson
  • Кастомные JSON-адаптеры
  • OOP-архитектура (manager layer, models, handlers)

▶ Запуск проекта

git clone https://github.com/basementdoor/java-kanban.git

Запустить src/api/HttpTaskServer.java

Сервер запускается по адресу http://localhost:8080

📡 API Эндпоинты

Получить все задачи

GET /epics
GET /subtasks

Получить задачу по ID

GET /epics/{id}
GET /subtasks/{id}

Создать задачу

POST /epics
POST /subtasks

Пример тела запроса:

{
  "name": "Название задачи",
  "description": "Описание задачи",
  "startTime": "2025-07-15T18:30",
  "duration": 90
}

Удалить задачу

DELETE /epics/{id}
DELETE /subtasks/{id}

Дополнительные эндпоинты

GET /history
GET /prioritized

About

Repository for homework project

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages