DEV Community

Cover image for From Forgotten Repo to Production: Rebuilding AdeptAI for the GitHub Finish-Up-A-Thon
Akshat Arya
Akshat Arya

Posted on

From Forgotten Repo to Production: Rebuilding AdeptAI for the GitHub Finish-Up-A-Thon

GitHub β€œFinish-Up-A-Thon” Challenge Submission

This is a submission for the GitHub Finish-Up-A-Thon Challenge

What I Built

AdeptAI is a production-grade AI platform for educators and students. Teachers can auto-generate exam papers, assignments, grading rubrics, question banks, and slides. Students get personalized learning roadmaps and an interactive RAG-based doubt-solver driven by their own syllabus PDFs.

It is built as a robust microservice architecture: React (Vite) + Tailwind frontend, Node.js + Express backend (using Redis + BullMQ for background job queuing, Socket.io for real-time progress updates), and a FastAPI AI engine orchestrating Gemini/Groq LLMs.

Tech Stack:

  • Frontend: React, TypeScript, Zustand, Tailwind CSS, Socket.io-client
  • Backend: Node.js, Express, MongoDB, Redis, BullMQ, Socket.io, PDFKit, Supabase Storage
  • AI Engine: Python, FastAPI, Google Gemini API (Embeddings & LLM), Groq SDK (Llama 3.3)

Demo

πŸ”— Live App: adept-ai-seven.vercel.app

πŸŽ₯ Video Walkthrough:

πŸ–₯️ GitHub Repository: github.com/Arya-Akshat/Adept_AI

The Comeback Story

πŸŽ’ It all started back in college, where we had so many exams frequently that teachers were constantly overwhelmed. One of my teachers told me about the hours they spend just dealing with manual paperwork and exam prep instead of actually teaching. They were formatting exam papers on outdated MS Word docs, manually aligning rubric marks, and copy-pasting study questions. It was clear that they were spending more time doing tedious administrative chores than actually teaching. I thought: there has to be a better way. πŸ’‘

⏰ That spark turned into AdeptAI. We built a prototype for a college hackathon, but like so many student projects, life got in the way. Finals hit, schedules filled up, and the project got completely abandoned. πŸ“š The code sat untouched on GitHub for months, a laggy, bug-ridden prototype that froze the entire browser during synchronous LLM calls and crashed if you uploaded a file larger than a few megabytes because we tried running heavy PyTorch embedding models locally. πŸ“‰

πŸš€ When the GitHub Finish-Up-A-Thon launched, I knew it was time to dust off the repo, completely tear down the old code, and build the premium, production-grade system it was always meant to be! πŸ› οΈ

Where it was before 🏚️

  • A basic, fragile study planner with synchronous PDF processing that froze the UI. 🐒
  • Clunky design, zero error handling, and API calls that timed out constantly. πŸ›‘
  • Heavy local PyTorch embedding models causing immediate out-of-memory crashes on free-tier hosting. πŸ’₯

What I changed, fixed, and added 🌟

  1. Async Queues ⚑: Offloaded all heavy AI processing to background worker queues powered by Redis and BullMQ. With Socket.io handling WebSockets, users now get live progress bars instead of frozen screens.
  2. Advanced Doubt Solver RAG 🧠: Engineered a powerful RAG pipeline using Google's Gemini Embedding API. Students can drop in lecture PDFs and instantly chat with their syllabus.
  3. Teacher Toolkit & Assignment Builder 🏫: Built a complete suite from scratch: an AI Rubric Generator, Exam/Question Bank Creator, Slide Deck Generator, and an Assignment Maker.
  4. Intuitive Folder Collections πŸ“: Replaced static file lists with nested folders and collections so teachers and students can structure their libraries perfectly.
  5. Class Cohorts & Progress Tracking πŸ‘₯: Created student group spaces allowing teachers to track study progress, roadmaps, and analytics in real-time.
  6. Robust Fail-safes πŸ›‘οΈ: Implemented model fallbacks (Gemini 3.5 Flash automatically fallback to 2.5 Flash) with retry backoffs to guarantee 100% API uptime.
  7. Cloud Migration ☁️: Replaced our resource-heavy local PyTorch setup with high-speed cloud embedding APIs, slashing our RAM footprint from 600MB+ to under 100MB.
  8. Stunning UI Overhaul 🎨: Rebuilt the frontend with a sleek, dark mode workspace layout that feels fast, modern, and incredibly satisfying to use.
  9. Production Deployment 🌐: Deployed the entire microservice stack (frontend, API servers, and AI engine) so the platform is fully live and open for anyone to use.

My Experience with GitHub Copilot

I can honestly say that rebuilding AdeptAI in such a short window would have been impossible without GitHub Copilot. It felt less like an autocomplete tool and more like a senior engineer pair-programming with me in real-time. πŸš€

  • Generating Boilerplate in Seconds: The moment I finished defining our core schemas, Copilot started to write entire files for me. It auto-completed complex Zod validation schemas, MongoDB aggregation pipelines, and TypeScript interfaces with frightening accuracy.
  • Writing Async Worker Handlers: BullMQ workers and Socket.io event emitters require a lot of repetitive orchestration logic (listening to a job, tracking status, emitting socket events, saving states). Copilot noticed the pattern on my very first worker and literally wrote the rest of the queue files for me. All I had to do was review and hit tab.
  • Seamless Context Awareness: Copilot effortlessly understood the relational structure of our database models, predicting the exact fields I needed to query across our Express routes and FastAPI controllers.

While I still needed to architect the queue topology and write custom retry logic, Copilot completely handled the execution velocity. It removed all the friction of writing boilerplate, allowing me to focus 100% on the core engineering and system architecture.


Thanks for reading! I'd love to hear from you:

  • Have you ever revived an abandoned hackathon project?
  • Teachers: what automated tools do you need most?
  • What feature should I add next?

Drop a comment below! Try the app at adept-ai-seven.vercel.app. πŸš€

Top comments (10)

Collapse
 
joshs831 profile image
JoshS831

Dude very nice work. Well thought out and destined to be every teacher or instructors new best friend. I give you two thumbs way way up. Keep up the amazing work. I look forward to the possibility of a future collab.

Collapse
 
gurudev007 profile image
Akshat Arya

Thanks so much! Hearing that it could be a teacher's best friend means a lot. I'd definitely love to connect and chat about collaborating in the future! πŸ™Œ

Collapse
 
blushberry007 profile image
blushberry

Nice work, its great to see a project go from an idea to something people can really use!

Collapse
 
gurudev007 profile image
Akshat Arya

Thankyou !

Collapse
 
abhyuday_sharma_5191b7650 profile image
Abhyuday Sharma

Great work, exactly when current education needs to integrate ai

Collapse
 
gurudev007 profile image
Akshat Arya

Appreciate it! Timing is everything, and it really feels like the right moment to bring these kinds of tools to the classroom

Collapse
 
decipher_6 profile image
Amol Vyas

Nice project. It's great to see projects use BYOK instead of locking consumers to a single subscription

Collapse
 
gurudev007 profile image
Akshat Arya

Glad you noticed that! I'm a big believer in giving people the freedom to plug in their own keys rather than forcing another subscription on them

Collapse
 
vguang profile image
Vismay

Really solid work bringing this to production. Building tools that make teachers' lives easier is always a win. Good luck with the challenge!

Collapse
 
gurudev007 profile image
Akshat Arya

Thank you! Making educators' lives even just a little bit easier was the main goal here. Really appreciate the support and the good wishes for the challenge!