Skip to content

mhit30/quickkanban

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

77 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

👨‍💻👩‍💻 QuickKanban

QuickKanban logo

QuickKanban is a real-time, collaborative kanban board with an AI Copilot assistant for intelligent task tracking, built for efficient project planning and team coordination.


🚀 Tech Stack

FastAPI Gemini Qdrant Redis MongoDB Express Socket.IO Docker Amazon ECS Amazon EC2 React Node.js Chakra UI Amazon ECR

AI Copilot (LLM Integration)

QuickKanban includes a real-time AI Copilot that delivers task insights as your board updates using a Retrieval-Augmented-Generation (RAG) pipeline. All queries first go through the Express.js backend API.

  • Embeds task updates using Gemini LLM embeddings
  • Stores and retrieves vectors with Qdrant
  • AI summaries, suggestions, and insights are streamed to user within ~500ms
  • A contextual thread is maintained between Gemini and user using Redis
  • Gemini and Qdrant interactions are served through dedicated FastAPI microservices

As users add more tasks, the AI Copilot can provide deeper insights for the expanding board - enabling dynamic reasoning and memory.

Features

  • Real-time updates using WebSockets (Socket.IO)
  • 🤖 AI Copilot Assistant that summarizes and reasons about tasks in real time
  • 🧠 RAG-based vector search powered by Gemini + Qdrant
  • 🧵 LLM memory and thread context via Redis
  • 👥 Live user presence tracking in collaborative kanban rooms
  • 🖱️ Live cursor indicators to show teammates' movements in real-time
  • 📌 Add tasks fluidly to boards; drag-and-drop with column transitions
  • 💾 Persistent task storage with MongoDB

System Architecture

  • Frontend: React + Socket.IO for live collaboration and presence
  • Main API: Node.js + Express + WebSockets
  • AI Microservices: FastAPI-based embedder, retriever, and query services
  • Gemini + Qdrant: RAG backend with embeddings + vector search
  • Redis: Stores temporary conversational thread between the LLM and user and serves as a general cache for board
  • MongoDB: Durable task + board storage

Setup & Deployment

QuickKanban is fully containerized and deployed using AWS.

Containerization

  • Each service (backend, AI microservices, Redis, Nginx) runs in its own Docker container
  • Containers are managed using ECS with EC2 launch type

AWS Deployment

  • Amazon ECS (EC2 Launch Type): Orchestrates microservices
  • Amazon EC2: Hosts all running containers and mounts SSL certs
  • Amazon ECR: Stores Docker images
  • Nginx: Handles HTTPS and reverse proxies to backend

Deployment files:

  • ecs-task-definition.json
  • nginx.conf
  • Dockerfile (for both backend and Nginx)

🤝 Contributing

Please feel free to contribute! This is a fun, ambitious project with lots of room to grow.

🛠️ Local Development Setup

  1. Fork this repository
  2. Clone your fork:
git clone https://github.com/mhit30/quickkanban.git

Note: Make sure Qdrant, MongoDB, Redis running on your system. Also obtain a Gemini API Key from Google GenAI to connect to Gemini.

 cd backend && npm install
 cd frontend && npm install

For backend (with Nodemon):

  nodemon index.js

For frontend (with React Vite)

  npm run dev

🔄 Making PRs

  • Use feature branches:
    git checkout -b feature/your-feature-name

  • Keep pull requests scoped and descriptive:

    • What feature or fix you made
    • Why its helpful

📄 License

This project is licensed under the MIT License.
You're free to use, modify, and distribute this software with proper attribution.

About

Socket + RAG based quick kanban boards for fast paced/brief project management.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published