ProManager is a modern, full-stack project management application designed to streamline workflows, enhance collaboration, and leverage AI for intelligent task generation and risk analysis.
- 📊 Dynamic Kanban Board: Drag-and-drop tasks across different statuses (To Do, In Progress, Review, Done).
- 🤖 AI Task Generation: Automatically generate realistic tasks based on project descriptions and team skills using the Groq AI API.
- 🔍 AI Risk Analysis: Identify bottlenecks, overloaded team members, and potential delays with AI-driven insights.
- 👥 Team Management: Assign roles (OWNER, ADMIN, MEMBER, VIEWER) and manage project collaborators.
- 📈 Real-time Statistics: Track project progress with live task and member counts.
- 🎨 Modern UI/UX: Clean, responsive interface with smooth animations and intuitive design.
- 🔒 Secure Authentication: JWT-based authentication with role-based access control.
- Framework: Angular 17
- Styling: Bootstrap 5, Custom CSS3 Animations
- Icons: Bootstrap Icons
- Real-time: WebSockets (STOMP/SockJS)
- Framework: Spring Boot 3
- Database: PostgreSQL
- Security: Spring Security + JWT
- ORM: Spring Data JPA (Hibernate)
- Framework: FastAPI (Python)
- AI Engine: Groq Cloud (Llama 3.3)
- Validation: Pydantic
- Containerization: Docker & Docker Compose
- Docker and Docker Compose installed.
- (Optional) Groq API Key for AI features.
-
Clone the repository:
git clone https://github.com/AyhamKsouri/project-manager.git cd project-manager -
Configure Environment Variables: Update the
docker-compose.ymlfile with yourGROQ_API_KEYif you have one. -
Run the application:
docker compose up --build
-
Access the application:
- Frontend: http://localhost
- Backend API: http://localhost:8080
- AI Service: http://localhost:8000
project-manager/
├── frontend/ # Angular application
├── backend/ # Spring Boot API
├── ai-service/ # Python AI microservice
├── docker-compose.yml # Orchestration for all services
└── README.md # Project documentation
- Fork the Project
- 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
Distributed under the MIT License. See LICENSE for more information.
Developed by Ayham Ksouri