Team Task Management Software is a robust application designed to streamline task management within teams, facilitating seamless interaction between administrators and users. Leveraging a modern microservice architecture, this application empowers administrators with comprehensive tools for task assignment, monitoring, and review, while providing users with an intuitive platform to track, complete, and submit their work.
- 📝 Task Creation & Management
- Create, edit, and manage tasks with detailed information
- Include title, description, tags, images, and deadlines
- 👥 User-Specific Assignment
- Assign tasks to individual users for clear accountability
- 📊 Task Monitoring
- Gain visibility into unassigned and completed tasks
- ✅ Efficient Review Process
- Review submitted tasks
- Provide feedback
- Manage task status (accept/decline) with remarks
- 📋 Personalized Task Tracking
- View all assigned tasks and their respective deadlines
- ✅ Effortless Task Completion & Submission
- Complete tasks and submit them for review
- Include relevant links and remarks
- 🔄 Feedback Loop
- Check administrator feedback
- Easily resubmit declined tasks
- 📈 Progress Visualization
- Accepted tasks automatically move to "Done" section
- Clear progress tracking
- React: A leading JavaScript library for building dynamic user interfaces
- Redux Toolkit: Simplifying state management for complex applications
- React Router DOM: Enabling smooth navigation between different sections
- Tailwind CSS: A utility-first CSS framework for rapid and responsive UI development
- Material UI: A comprehensive library of prebuilt React components
- Spring Boot: A robust framework for building production-ready applications
- Hibernate: Powerful Object-Relational Mapping (ORM) tool
- JPARepository: Simplifying data access with Spring Data JPA
- JWT Token: Implementing secure authentication and authorization
The backend is architected as a set of interconnected microservices:
graph LR
A[Frontend] --> B[Gateway Server]
B --> C[Eureka Server]
B --> D[User Service]
B --> E[Task Service]
B --> F[Submission Service]
B --> G[Notification Service]
- 🔍 Eureka Server: Centralized service discovery
- 🚪 Gateway Server: API gateway for routing and authentication
- 👤 User Service: User authentication and profiles
- 📤 Submission Service: Task submission and review process
- 📋 Task Service: Task-related operations
- 🔔 Notification Service: Event notifications
- Node.js (for frontend)
- Java Development Kit (JDK)
- MySQL (database)
- Maven (build tool)
-
Clone the repository:
git clone https://github.com/your-repo/team-task-management.git cd team-task-management
-
Backend Setup:
# Start Eureka Server cd backend/eureka-server mvn spring-boot:run # Start Gateway Server cd ../gateway-server mvn spring-boot:run # Start Microservices cd ../[service-name]-service mvn spring-boot:run
-
Frontend Setup:
cd frontend npm install npm start
The application will be available at http://localhost:3000
We welcome contributions! Please see CONTRIBUTING.md
for details.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m 'Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.