{"id":25918141,"url":"https://github.com/pranav128/task-management-system-backend","last_synced_at":"2026-05-02T08:32:31.123Z","repository":{"id":279938258,"uuid":"940025855","full_name":"Pranav128/Task-management-system-backend","owner":"Pranav128","description":"The Task Management System Backend is a robust and scalable Spring Boot application designed to manage tasks, users, comments, and notifications. It provides RESTful APIs for seamless integration with the frontend.","archived":false,"fork":false,"pushed_at":"2025-02-28T09:52:47.000Z","size":63172,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-28T16:42:04.514Z","etag":null,"topics":["java","mysql","restful-api","springboot","webapp"],"latest_commit_sha":null,"homepage":"https://taskmaster128.netlify.app","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Pranav128.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-02-27T13:50:24.000Z","updated_at":"2025-02-28T09:54:48.000Z","dependencies_parsed_at":"2025-02-28T16:55:08.236Z","dependency_job_id":null,"html_url":"https://github.com/Pranav128/Task-management-system-backend","commit_stats":null,"previous_names":["pranav128/task-management-system-backend"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Pranav128/Task-management-system-backend","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Pranav128%2FTask-management-system-backend","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Pranav128%2FTask-management-system-backend/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Pranav128%2FTask-management-system-backend/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Pranav128%2FTask-management-system-backend/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Pranav128","download_url":"https://codeload.github.com/Pranav128/Task-management-system-backend/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Pranav128%2FTask-management-system-backend/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":27306284,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-11-28T02:00:06.623Z","response_time":58,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["java","mysql","restful-api","springboot","webapp"],"created_at":"2025-03-03T14:16:01.176Z","updated_at":"2025-11-28T11:03:06.623Z","avatar_url":"https://github.com/Pranav128.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🚀 Task Management System - Backend (Spring Boot)\n\n![Spring Boot](https://img.shields.io/badge/Spring%20Boot-3.1.5-green)\n![Java](https://img.shields.io/badge/Java-17-blue)\n![MySQL](https://img.shields.io/badge/MySQL-8.0-orange)\n![Hibernate](https://img.shields.io/badge/Hibernate-6.6.5-lightgrey)\n![Swagger](https://img.shields.io/badge/Swagger-3.0-brightgreen)\n\nThis is the backend service for the Task Management System, built using **Spring Boot, Spring Security, Hibernate, and MySQL**. It provides a REST API for managing users, tasks, notifications, comments and attachments.\n\n--- \n\n### 💻Live experience: https://taskmaster128.netlify.app\n### 🛫Consume Restful web-services: https://taskmaster-v1.onrender.com/api\n\n \u003cvideo width=\"100%\" controls\u003e\n  \u003csource src=\"Media/auth.mp4\" type=\"video/mp4\"\u003e\n  Your browser does not support the video tag.\n\u003c/video\u003e\n\n\u003cvideo width=\"100%\" controls\u003e\n  \u003csource src=\"Media/task.mp4\" type=\"video/mp4\"\u003e\n  Your browser does not support the video tag.\n\u003c/video\u003e\n\n---\n## Table of Contents\n\n- [Features](#-features)\n- [Technologies Used](#-tech-stack)\n- [Setup Instructions](#-setup-instructions)\n- [API Documentation](#apis)\n- [Database Schema](#-database)\n- [Deploying the Application](#-deployment)\n- [Screenshots](#-screenshots)\n- [License](#-license)\n---\n\n## **📌 Features**\n- ✅ **User Authentication \u0026 JWT Authorization** (Login, Signup, Forgot Password, Role-based Access)\n- ✅ **Task Management** (Create, Update, Assign, Delete, Change Status \u0026 Priority)\n- ✅ **Comments \u0026 Notifications** (Users can comment \u0026 get real-time notifications)\n- ✅ **File Attachments** (Upload \u0026 download files)\n- ✅ **Role-based Authorization** (`ADMIN` \u0026 `USER`)\n- ✅ **Pagination \u0026 Sorting** for Task Lists\n- ✅ **CORS Support** (Cross-Origin Requests)\n\n---\n\n## **📌 Tech Stack**\n- **Spring Boot 3**\n- **Spring Security (JWT)**\n- **Hibernate \u0026 JPA**\n- **MySQL**\n- **Lombok**\n- **Swagger (API Documentation)**\n- **Maven**\n- **Docker** *(Optional)*\n\n---\n\n## **📌 Setup Instructions**\n\n### Prerequisites\n- Java 17\n- MySQL 8.0\n- Maven 3.8+\n\n### **1️⃣ Clone the Repository**\n```bash\nhttps://github.com/Pranav128/Task-management-system-frontend.git\n```\n\n### **2️⃣ Configure MySQL Database**\n```bash\nCreate a MySQL database named task_management_db\nUpdate src/main/resources/application.properties\n```\n\n### **3️⃣ Run the Application**\n```bash\nmvn clean spring-boot:run\n```\n📌 Backend is now running on http://localhost:8080/api\n\n--- \n\n## **📌API's**\n\nThis document outlines the available API endpoints for the application.\n\n### **🛠Authentication**\n\n| Method | Endpoint                    | Description                |\n|--------|-----------------------------|----------------------------|\n| POST   | `/api/auth/signup`          | Register a new user        |\n| POST   | `/api/auth/login`           | Login \u0026 receive JWT token  |\n| POST   | `/api/auth/forgot-password` | Send reset link to email   |\n| POST   | `/api/auth/reset-password`  | Reset password using token |\n\n### **📃Task Management**\n\n| Method | Endpoint          | Description                     |\n|--------|-------------------|---------------------------------|\n| GET    | `/api/tasks`      | Get all tasks (with pagination) |\n| POST   | `/api/tasks`      | Create a new task               |\n| PUT    | `/api/tasks/{id}` | Update task details             |\n| DELETE | `/api/tasks/{id}` | Delete a task                   |\n\n### **🔔Comments \u0026 Notifications**\n\n| Method | Endpoint                      | Description                    |\n|--------|-------------------------------|--------------------------------|\n| POST   | `/api/comments/{taskId}`      | Add a comment to a task        |\n| GET    | `/api/notifications/{taskId}` | Fetch notifications for a task |\n\n\n--- \n\n\n## **📌 Database**\n**ERR Diagram**\n![Home](Media/ERR%20diagram.png \"ERR\")\n![Home](Media/entities.png \"ERR\")\n--- \n\n\n## **📌 Deployment**\n\n### **🛠 Build JAR**\n```bash\nmvn clean package -DskipTests\n```\n\n### **🚀 Run JAR**\n```bash\njava -jar target/task-management-system.jar\n```\n### **🐳 Docker Deployment**\n```bash\ndocker build -t task-management-backend .\ndocker run -p 8080:8080 task-management-backend\n```\n--- \n\n\n## **📌 Screenshots**\n\n1. **Home Page**\n   ![Home](Media/screenshots/home1.png \"Home\")\n2. **Signup Page**\n   ![Signup](Media/screenshots/signup.png \"Signup\")\n3. **Login Page**\n   ![Login](Media/screenshots/login.png \"Login\")\n4. **Dashboard Page**\n   ![Dashboard](Media/screenshots/dashboard.png \"Dashboard\")\n5. **Task List Page**\n   ![TaskList](Media/screenshots/taks-list.png \"TaskList\")\n6. **Task Details Page**\n   ![Task Details](Media/screenshots/taskDetails1.png \"Task Details\")\n   ![Task Details](Media/screenshots/taskDetails2.png \"Task Details\")\n7. **New Task Page**\n   ![Home](Media/screenshots/createTask1.png \"New Task\")\n   ![Home](Media/screenshots/createTask2.png \"New Task\")\n   ![Home](Media/screenshots/createTask3.png \"New Task\")\n8. **Profile Page**\n   ![Profile](Media/screenshots/profile1.png \"Profile\")\n   ![Profile](Media/screenshots/profile2.png \"Profile\")\n9. **Forgot-Password Page**\n   ![Forgot-Password](Media/screenshots/forgotPass.png \"Forgot-Password\")\n10. **Reset-Password Page**\n    ![Reset-Password](Media/screenshots/resetPass.png \"Reset-Password\")\n11. **Access-denied Page**\n    ![Access-denied](Media/screenshots/access-denied.png \"Access-denied\")\n\n---\n\n## **📌 License**\n**This project is licensed under the MIT License. See the [LICENSE](/LICENSE) file for details.**\n\n--- \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpranav128%2Ftask-management-system-backend","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpranav128%2Ftask-management-system-backend","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpranav128%2Ftask-management-system-backend/lists"}