Skip to content

ladyincodes/todo-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

28 Commits
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ“ Todo App

A full-stack to-do list application built with a Spring Boot backend and a modern React frontend. The backend provides a secure RESTful API with JWT-based authentication and per-user task management.

πŸ“ Project Structure

todo-app/
β”œβ”€β”€ backend/    # Java Spring Boot API (JWT-secured)
β”œβ”€β”€ frontend/   # React client app

πŸ› οΈ Technologies Used

Backend

  • Java 21+
  • Spring Boot
  • Spring Security
  • Spring Data JPA
  • MySQL
  • JWT for authentication

Frontend (planned)

  • React
  • Axios (HTTP client)
  • Bootstrap or Tailwind (optional)

πŸš€ Features

  • βœ… User registration & login
  • βœ… JWT-based authentication & authorization
  • βœ… Secure endpoints by user (multi-user support)
  • βœ… Create, update, delete, and view to-do tasks
  • βœ… Filter tasks by completion status or due date (e.g. today)
  • βœ… Validation using @Valid, @NotBlank, @FutureOrPresent
  • βœ… Global error handling with structured responses
  • βœ… Relational database integration (MySQL)
  • βœ… Layered architecture (Controller β†’ Service β†’ Repository)

πŸ“‘ API Endpoints

πŸ” Authentication

Method Endpoint Description
POST /api/auth/register Register a new user
POST /api/auth/login Log in and receive a JWT

πŸ‘€ User

Method Endpoint Description
GET /api/users/profile Get current authenticated user

βœ… Tasks (All require Authorization header)

Method Endpoint Description
GET /api/tasks Get tasks for user (supports filters)
GET /api/tasks/{id} Get a specific task by ID
POST /api/tasks Create a new task (validated input)
PUT /api/tasks/{id} Update an existing task
DELETE /api/tasks/{id} Delete a task (only if owned by the user)

▢️ Running the Backend Locally

Clone the Repository

git clone https://github.com/your-username/todo-app.git
cd todo-app

✨ Status

βœ… Backend: Completed 🚧 Frontend: In development


About

A RESTful API for managing to-do tasks with user registration, login, logout, and stateless authentication using Spring Boot and JWT.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages