A full-stack project management system that leverages AI agents to assist with task management, sprint planning, and team collaboration. It features a React frontend, Node.js/Express backend, Redis caching, WebContainer API for live code previews, Docker containers, and integrates with multiple AI APIs.
- Docker & Docker Compose
- Node.js (for local development)
- npm (for local development)
- Use
docker compose up -d --buildto build and run all services. - For local development dependencies, run
npm iin bothbackendandfrontenddirectories separately.
A live demo may be available at https://kanbankitchen.lol — this may or may not be working depending on whether we are still hosting it.
After installation, access the frontend at http://localhost:5173. The backend API runs at http://localhost:3001.
- Start backend:
cd backendthennpm start - Start frontend:
cd frontendthennpm run dev
Note: Copy .env.example to .env in the project root and backend, then configure Supabase, Redis URL, and AI API keys. WebContainer live preview requires VITE_WEBCONTAINER_CLIENT_ID in your env.
- Users interact with dashboards, sprints, and backlogs.
- Task creation, editing, and drag-and-drop between sprints and backlog.
- Real-time updates via Socket.IO.
- Handles REST API requests for projects, tasks, sprints, users, and AI agents.
- Integrates with AI APIs (OpenAI and Anthropic Claude) for code generation. Agent types for Gemini and DeepSeek are supported in the UI and route through the OpenAI provider.
- Manages authentication, authorization, and data validation.
- Swagger API documentation available at http://localhost:3001/api-docs (non-production only).
- Caches generated code and activity logs for performance.
- Uses Supabase (PostgreSQL). Configure separately; not included in Docker. Run migrations from
backend/migrations/database.sql. - Stores all persistent data (tasks, sprints, users, etc.).
- Assign tasks to AI agents for code generation, enhancement, or review.
- Agents interact with tasks and provide suggestions or automated actions.
- AI-powered text enhancement for task descriptions and acceptance criteria (via assistant API).
- User login/signup.
- User creates a new project, adding the title, description, and development team (including non-technical users).
- Users create tasks in the product backlog, inputting all required fields: name, description, acceptance criteria, story points, priority, and assigning AI agents.
- Tasks are automatically sorted by priority (High > Medium > Low) and alphabetically.
- Users can filter and search tasks by priority, agent, or keywords.
- Users can edit or delete tasks and sprints as needed.
- Users can start a sprint, describing the sprint goal and duration.
- Tasks can be moved to sprints or backlogs via drag-and-drop.
- Sprints can be started, completed, or deleted. Completing a sprint moves unfinished tasks to the backlog or a new sprint.
- AI agents can be assigned to tasks for automated code generation, enhancement, or review.
- Users use the board to move the tasks around the four columns: To Do (default state), In Progress (generate the task work), Ready for Testing (live preview of task and provide feedback if unacceptable), Done (task completed).
- Users can view live updates and notifications for task changes and sprint progress.
- Users can export project reports (PDF with AI summary, burndown charts) and usage analytics (CSV).
- Performance metrics and analytics are available for sprints, tasks, and team members.
- Users can connect GitHub via OAuth, create repos, and view commit history for integrated projects.
- Real-time collaboration is enabled via Socket.IO. Live co-authoring shows concurrent edits.
- Project chatbot assists with project management. Activity logs track agent and task events.
We welcome contributions! Please follow these guidelines:
- Fork the repository and create a new branch for your feature or bugfix.
- Follow consistent coding standards (Prettier, ESLint, and best practices for React/Node.js).
- Write clear commit messages and document your code where necessary.
- Ensure your changes do not break existing functionality.
- Submit a pull request (PR) with a clear description of your changes and reference any related issues.
- Participate in code reviews and address feedback promptly.
- Authentication is required for all users (JWT-based, with secure password hashing).
- Sensitive data is encrypted in transit (HTTPS recommended in production).
- User permissions and roles are enforced on the backend.
- All API inputs are validated and sanitized to prevent common vulnerabilities (e.g., SQL injection, XSS).
- If you discover a security vulnerability, please report it privately to team 15/kanban kitchen members and we will modify your order.
- The system is containerized using Docker and orchestrated with Docker Compose for easy scaling.
- Redis is used for caching and can be scaled horizontally for high availability.
- The backend is stateless and can be scaled by running multiple instances behind a load balancer.
- The frontend is built for static hosting and can be served via CDN for global performance.
- Database (e.g., Supabase/Postgres) should be configured for replication and backups in production.
- Monitor system performance and bottlenecks using built-in analytics and external tools.
- This Project will be scaled up if our judges are satisfied with it.
The logos and name "RAiD" used in this project are for educational purposes only. This is a school project developed under the problem statement provided by the company RAiD, which was given to our school as part of this assignment.