A lightweight, pure Java task tracker app implementing a kanban-style workflow.
- Task Management:
- Create, update, and delete tasks
- Track task status
- Manage task duration and timelines
- Epic/Subtask System:
- Create complex tasks (epics) composed of smaller subtasks
- Automatic calculation of epic timelines based on subtasks
- History Tracking:
- View recently accessed tasks
- Priority System:
- Tasks sorted by start time using
TreeSetwith custom comparator
- Tasks sorted by start time using
- In-Memory Storage: Fast runtime storage
- File-Based Storage: Persistent storage to file
- HTTP endpoints for basic operations (GET/POST/DELETE)
- JSON serialization using Gson with custom converters
- Java 21 or later
- Maven 3.9 or later
- Git 2.34.1 or later
git clone https://github.com/DawydowGerman/java-kanban.gitcd java-kanbanmvn clean package-
Option A: Run directly with Maven
mvn exec:java -Dexec.mainClass="ru.practicum.kanban.Main" -
Option B: Run from built JAR
java -jar target/kanban-1.0-SNAPSHOT.jar