Wydajne i proste REST API do zarządzania zadaniami, zbudowane w oparciu o ekosystem Spring Boot. Aplikacja pozwala na obsługę użytkowników, list zadań (To-Do) oraz samych zadań, z pełnym wsparciem dla relacyjnych powiązań między tymi encjami.
- Zarządzanie Użytkownikami: Rejestracja, edycja i usuwanie kont.
- Inteligentne Listy Zadań: Po utworzeniu konta, system automatycznie generuje dla użytkownika domyślną listę zadań ("default"). Możliwość tworzenia wielu własnych list.
- Obsługa Zadań (CRUD): Pełne zarządzanie poszczególnymi zadaniami, w tym śledzenie statusu ukończenia (
isCompleted), dodawanie opisów oraz terminów (dueDate). - Warstwowa Architektura: Klasyczny podział na Kontrolery, Serwisy i Repozytoria z wykorzystaniem wzorców projektowych typowych dla Springa.
- Java 21
- Spring Boot 3.2.4 (Web, Data JPA)
- MariaDB (baza danych)
- Lombok (redukcja boilerplate code)
- Maven
Aby uruchomić ten projekt lokalnie, upewnij się, że w Twoim środowisku zainstalowane są:
- JDK 21 lub nowsze
- Maven 3.6+
- Serwer MariaDB
-
Sklonuj repozytorium
git clone https://github.com/Darsonn/todolistrestapi.git cd TodoListRestApi -
Skonfiguruj bazę danych Upewnij się, że w Twojej instancji MariaDB istnieje baza o nazwie
todolistapp. Jeśli używasz innego hasła niż domyślne, zaktualizuj pliksrc/main/resources/application.properties:spring.datasource.url=jdbc:mariadb://127.0.0.1:3306/todolistapp spring.datasource.username=root spring.datasource.password=twoje_haslo
-
Uruchom aplikację Zbuduj i uruchom projekt przy pomocy Mavena:
mvn spring-boot:run
Serwer wystartuje lokalnie na porcie 10000 (zgodnie z konfiguracją
server.port).
Pełna dokumentacja endpointów została wygenerowana i jest utrzymywana na zewnętrznej platformie. Można się z nią zapoznać pod poniższym linkiem:
👉 Dokumentacja Todo List REST API (Bump.sh)
/api/users- Zarządzanie użytkownikami/api/todolists- Zarządzanie listami zadań (możliwość wyszukiwania list po nazwie i ID użytkownika)/api/tasks- Operacje na konkretnych zadaniach
Projekt trzyma się konwencji standardowego REST API w Springu:
controller/- Wystawia interfejsy HTTP/REST.service/- Zawiera główną logikę biznesową.repository/- Interfejsy Spring Data JPA.model/- Modele danych/Encje (User, TodoList, Task).