Skip to content

wzjav/Team15_FSDP

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

707 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FSDP - RAiD Agentic AI Project Management

Project Overview

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.

How to Install

Prerequisites

  • Docker & Docker Compose
  • Node.js (for local development)
  • npm (for local development)

Installation Steps

  1. Use docker compose up -d --build to build and run all services.
  2. For local development dependencies, run npm i in both backend and frontend directories separately.

How to Run

Production

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.

With Docker Compose

After installation, access the frontend at http://localhost:5173. The backend API runs at http://localhost:3001.

For Local Development

  1. Start backend: cd backend then npm start
  2. Start frontend: cd frontend then npm 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.

Main Workflow

1. Frontend (React + Vite)

  • Users interact with dashboards, sprints, and backlogs.
  • Task creation, editing, and drag-and-drop between sprints and backlog.
  • Real-time updates via Socket.IO.

2. Backend (Node.js + Express)

  • 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).

3. Redis

  • Caches generated code and activity logs for performance.

4. Database

  • Uses Supabase (PostgreSQL). Configure separately; not included in Docker. Run migrations from backend/migrations/database.sql.
  • Stores all persistent data (tasks, sprints, users, etc.).

5. AI Agent Integration

  • 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).

6. Workflow Example

  • 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.

How to Add Code / Contribute

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.

Security

  • 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.

Scalability

  • 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.

Disclaimer

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.

About

No description, website, or topics provided.

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages