Skip to content

Hustle Hub is a smart task management system that helps users efficiently handle personal and professional workflows. It features authentication, task creation, prioritization, categorization, and real-time status tracking. With built-in notifications and a clean interface, Hustle Hub ensures seamless productivity and organization.

Notifications You must be signed in to change notification settings

jasjeev013/hustle-hub

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

21 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Hustle Hub: The Authentic Scheduler

Hustle Hub Banner

Hustle Hub is a comprehensive task management system designed to help users efficiently manage their personal and professional tasks. It allows users to create, organize, and track tasks by setting priorities, due dates, and categories. With features like user authentication, task categorization, status tracking, and in-app notifications, Hustle Hub ensures a seamless experience for individuals and teams to stay organized and productive.


πŸ“Œ Table of Contents

  1. Features
  2. Technologies Used
  3. Installation & Setup
  4. Folder Structure
  5. Screenshots
  6. Data Modeling
  7. API Documentation
  8. Contributing
  9. Contact

✨ Features

βœ… User Authentication – Secure login/signup using JWT.
βœ… Task Management – Create, edit, delete, and categorize tasks.
βœ… Priority & Due Dates – Set task priorities (High, Medium, Low) and deadlines.
βœ… Status Tracking – Mark tasks as Pending, In Progress, or Completed.
βœ… Notifications – In-app alerts for upcoming deadlines.
βœ… Responsive UI – Works smoothly on desktop and mobile.


πŸ›  Technologies Used

Frontend

  • Angular – UI Framework
  • NgRx – State Management
  • HttpClientModule – HTTP Requests
  • Angular Material / NG Bootstrap – Styling & UI Components

Backend

  • Spring Boot – RESTful API
  • Spring Security – Authentication & Authorization
  • Spring Data JPA – Database Interaction
  • PostgreSQL – Database

Other Tools

  • JWT – Authentication Tokens
  • Git – Version Control

βš™ Installation & Setup

Prerequisites

  • Node.js & npm (for Angular)
  • Java JDK 11+ (for Spring Boot)
  • PostgreSQL (Database)

Steps to Run

1. Backend (Spring Boot)

cd server  
mvn spring-boot:run  # Starts the backend on http://localhost:8080

2. Frontend (Angular)

cd client  
npm install          # Install dependencies  
ng serve             # Runs the frontend on http://localhost:4200  

πŸ“‚ Folder Structure

Hustle-Hub/  
β”‚  
β”œβ”€β”€ client/            # Frontend (Angular)  
β”‚   β”œβ”€β”€ src/  
β”‚   β”‚   β”œβ”€β”€ app/       # Components, Services, NgRx Store  
β”‚   β”‚   β”œβ”€β”€ assets/    # Images, Styles  
β”‚   β”‚   └── ...  
β”‚  
β”œβ”€β”€ server/            # Backend (Spring Boot)  
β”‚   β”œβ”€β”€ src/main/java/  
β”‚   β”‚   β”œβ”€β”€ controller/  
β”‚   β”‚   β”œβ”€β”€ model/  
β”‚   β”‚   β”œβ”€β”€ repository/  
β”‚   β”‚   β”œβ”€β”€ service/  
β”‚   β”‚   └── ...  
β”‚  
└── data-modelling/    # Database Schema & ER Diagrams  
    └── data_model.md  # Data modeling structure
    └── images/   

πŸ“Έ Screenshots

Login Page

Login Page

Task Dashboard

Task Dashboard

Task Creation Modal

Task Creation Modal

Profile Dashboard

Profile Sadhboard


πŸ—„ Data Modeling

ER Diagram

ER Diagram


πŸ“œ API Documentation

Base URL

[http://localhost:8080/](http://localhost:8080/)

Endpoints

Authentication

Method Endpoint Description
POST /api/user/create Register a new user
POST /api/user/apiLogin Login with credentials

Tasks

Method Endpoint Description
GET /api/task/all/{categoryId} Get all tasks (requires auth)
POST /api/task/create/{categoryId} Create a new task
PUT /api/task/update/{categoryId}/{taskId} Update a task
DELETE /api/task/delete/{categoryId}/{taskId} Delete a task

Sample Request (Login)

POST /api/user/create
{
  "email": "[email protected]",
  "password": "yourpassword"
}

Sample Response (Get Tasks)

GET /api/task/all/{categoryId}
{
  "message": "string",
  "result": true,
  "data": [
    {}
  ]
}

Swagger UI

Access API docs interactively at http://localhost:8080/swagger-ui.html


🀝 Contributing

  1. Fork the repository.
  2. Create a branch (git checkout -b feature/your-feature).
  3. Commit changes (git commit -m "Add your feature").
  4. Push to the branch (git push origin feature/your-feature).
  5. Open a Pull Request.

πŸ“§ Contact

About

Hustle Hub is a smart task management system that helps users efficiently handle personal and professional workflows. It features authentication, task creation, prioritization, categorization, and real-time status tracking. With built-in notifications and a clean interface, Hustle Hub ensures seamless productivity and organization.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published