TaskForge is a comprehensive full-stack task management application designed to help individuals and teams organize, track, and complete tasks efficiently. Built with Spring Boot backend and Angular frontend, TaskForge offers a robust and feature-rich solution for personal and professional task management.
-
📝 Comprehensive Task Management
- Create, organize, and track tasks with ease
- Set priorities, due dates, and categories
- Mark progress with customizable status options
-
👥 Collaborative Features
- Comment on tasks for better communication
- Real-time notifications for updates
-
🔐 Secure Authentication
- JWT-based authentication system
- Role-based access control
- Secure password management
-
📱 Responsive Design
- Works seamlessly across desktop and mobile devices
- Intuitive user interface for better productivity
-
🔔 Notification System
- Email notifications for important updates
- In-app notifications via WebSockets
- Customizable notification preferences
TaskForge follows a modern full-stack architecture:
- Backend: Java 21 with Spring Boot 3.4.5
- Frontend: Angular 19 with Angular Material
- Database: MySQL 8+
- Communication: RESTful APIs and WebSockets for real-time updates
- Java 21+
- Node.js 18+
- MySQL 8+
- Maven 3.6+
- Git
# Clone the repository
git clone https://github.com/hrishabh-16/TaskForge.git
cd TaskForge
# Start Backend (Spring Boot)
cd todo-backend
mvn spring-boot:run
# Start Frontend (Angular) in a new terminal
cd ../todo-frontend
npm install
ng serve
# Access the application at http://localhost:4200# Clone the repository
git clone https://github.com/hrishabh-16/TaskForge.git
cd TaskForge
# Build and run backend
cd todo-backend
docker build -t hrishabh20/todo-backend:latest .
docker run -p 4000:4000 hrishabh20/todo-backend:latest
# Build and run frontend in a new terminal
cd ../todo-frontend
docker build -t hrishabh20/todo-frontend:latest .
docker run -p 4200:80 hrishabh20/todo-frontend:latest
# Access the application at http://localhost:4200For detailed documentation, please visit:
- Backend Documentation - Spring Boot backend details
- Frontend Documentation - Angular frontend details
- API Documentation: Available at
http://localhost:4000/swagger-ui/index.htmlwhen running the backend
- Spring Boot: Core framework
- Spring Security: Authentication and authorization
- Spring Data JPA: Database access
- JWT: Token-based security
- MySQL: Database
- Hibernate: ORM
- Maven: Dependency management
- Angular: Core framework
- Angular Material: UI components
- RxJS: Reactive programming
- TailwindCSS: Styling
- SockJS/STOMP: WebSocket communication
- NgX-Toastr: Notifications
- Angular Calendar: Calendar functionality
TaskForge/
├── todo-backend/ # Spring Boot Backend
├── todo-frontend/ # Angular Frontend
└── README.md # This file
The backend follows a layered architecture with controllers, services, repositories, and entities. For detailed structure, refer to the Backend README.
The frontend follows Angular best practices with core/feature/shared module organization. For detailed structure, refer to the Frontend README.
We welcome contributions to TaskForge! Please follow these steps:
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Spring Boot
- Angular
- Angular Material
- TailwindCSS
- All the open-source libraries that made this project possible
Project Link: https://github.com/hrishabh-16/TaskForge
Made with ❤️ by Hrishabh