Skip to content

harshagarwalnyu/HackNYU-Agora

Repository files navigation

🏛️ Agora

The Future of Socratic Learning — Voice‑First & Retrieval‑Augmented.

Next.js FastAPI Groq Qdrant License: MIT

FeaturesArchitectureGetting StartedTech StackContributing


📖 Introduction

Agora is the Apex of Agentic Education. It moves beyond standard "instructional" AI to provide a true Socratic tutoring experience. By combining State-of-the-Art (SOTA) LLMs with high-fidelity voice interfaces and a collaborative whiteboard, Agora creates a learning environment that monitors student frustration and provides targeted, retrieval-augmented guidance.

💎 Features

  • 🎙️ Zero-Latency Voice Loop: leverages Groq's Whisper (STT) and Edge TTS for near-instant human-like verbal interaction.
  • 🧠 Socratic Reasoning Engine: Powered by LangGraph, the backend manages pedagogy states, ensuring the tutor prompts the student to think rather than just giving answers.
  • 📚 Retrieval-Augmented Generation (RAG): Integrates with Qdrant to provide contextually relevant responses based on your uploaded materials (PDFs, Images, Notes).
  • 🎨 Collaborative Whiteboard: Real-time integration with Tldraw via Socket.IO allowing the AI to draw and highlight concepts synchronously with the student.
  • ⚡ High-Performance Parsing: Uses Docling for deep document structure extraction from complex PDFs and images.

🏗️ Architecture

graph TD
    User((User)) <--> |Voice/WS| FE[Next.js Frontend]
    FE <--> |Socket.IO| BE[FastAPI Backend]
    subgraph Services
        BE --> |STT/LLM| Groq[Groq Cloud]
        BE --> |RAG| Qdrant[(Qdrant Vector DB)]
        BE --> |TTS| Edge[Edge TTS]
        BE --> |Parsing| Docling[Docling Engine]
    end
Loading

🚀 Getting Started

Follow these instructions to set up your local development environment.

📋 Prerequisites

1. Clone & Install

git clone https://github.com/harshagarwalnyu/HackNYU-Agora.git
cd HackNYU-Agora

2. Environment Configuration

  1. Backend: Copy backend/.env.example to backend/.env.
  2. API Keys: Enter your GROQ_API_KEY in backend/.env. Get one here.

3. Launching

Quick-Start (Windows Recommended)

./dev.ps1

Manual Start

  1. Start Services: docker compose up -d qdrant
  2. Backend: cd backend && uv run python -m app.main
  3. Frontend: cd frontend && pnpm install && pnpm dev

🛠️ Tech Stack

  • Frontend: Next.js 15, Tailwind CSS, Zustand, Tldraw, Socket.IO Client.
  • Backend: FastAPI, LangGraph, Pydantic, Docling, Python-SocketIO.
  • Persistence: Qdrant (Vector Database).
  • Inference: Groq (Llama 3.3 / Whisper), Edge TTS.

🤝 Contributing

We welcome contributions! Please follow these steps:

  1. Fork the project.
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature).
  3. Commit your changes (git commit -m 'Add some AmazingFeature').
  4. Push to the branch (git push origin feature/AmazingFeature).
  5. Open a Pull Request.

📜 License

Distributed under the MIT License. See LICENSE for more information.


Built for NYU Hackathon 2025

About

Agora — voice-first Socratic AI tutor with RAG (LangGraph + Groq + Qdrant), collaborative Tldraw whiteboard, Next.js + FastAPI. HackNYU project.

Topics

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors