Codebase Structure

📁 Backend Structure (SpringBoot)

View Backend Repo
📁auth

📁 Frontend Structure (React)

View Frontend Repo
📁src

API Reference

POST /api/auth/signup

Request Payload

{
  "fullName": "John Doe",
  "email": "john@example.com",
  "password": "securePassword123"
}

Response (201)

{
  "status": 201,
  "success": true,
  "message": "Signup successful",
  "email": "john@example.com",
  "fullName": "John Doe",
  "token": "eyJhbGciOiJIUzI1Ni..."
}

POST /api/auth/login

Request Payload

{
  "email": "john@example.com",
  "password": "securePassword123"
}

Response (200)

{
  "status": 200,
  "success": true,
  "message": "Login successful",
  "email": "john@example.com",
  "fullName": "John Doe",
  "token": "eyJhbGciOiJIUzI1Ni..."
}

POST /api/auth/refresh

Request Payload

{
  "refreshToken": "eyJhbGciOiJIUzI1NiJ9..."
}

Response (200)

{
  "status": 200,
  "success": true,
  "message": "Token refreshed successfully",
  "email": "john@example.com",
  "token": "eyJhbGciOiJIUzI1NiJ9...",
  "refreshToken": "eyJhbGciOiJIUzI1NiJ9...",
  "fullName": "John Doe"
}

POST /api/auth/logout

Required Headers

{
  "Authorization": "Bearer <YOUR_JWT_TOKEN>"
}

Response (200)

{
  "status": 200,
  "message": "Logged out successfully"
}