AI-powered web app for personalized learning and document Q&A.
Marque turns the documents you already have — lecture notes, research papers, manuals, meeting transcripts — into an interactive learning surface. Upload a document, ask a question in natural language, and Marque returns a grounded answer with citations, follow-up suggestions, and lightweight study aids generated on the fly.
Built by a two-person team starting August 2024.
- AI Q&A engine — Retrieval-Augmented Generation pipeline over a Pinecone vector store, with OpenAI embeddings and a Python evaluation harness that benchmarks answer quality on every release.
- Web app — Next.js (App Router) + TypeScript frontend on a custom Tailwind design system, with Framer Motion for animation and WCAG-compliant accessibility primitives.
- Backend — FastAPI + asyncio, PostgreSQL for application data, S3-backed media, deployed on AWS ECS Fargate behind CloudFront.
- Operations — GitHub Actions CI/CD with staged deploys, Docker containerization, Datadog metrics, Sentry error tracking.
┌─────────────────────────┐
│ Next.js (Vercel/CF) │
│ App Router + Tailwind │
└────────────┬────────────┘
│ HTTPS
▼
┌─────────────────────────┐
│ FastAPI (ECS Fargate) │
│ asyncio + uvicorn │
└──┬──────────────────┬───┘
│ │
┌──────▼──────┐ ┌──────▼──────┐
│ Postgres │ │ Pinecone │
│ (RDS) │ │ (vectors) │
└─────────────┘ └──────┬──────┘
│
┌──────▼──────┐
│ OpenAI API │
│ (LLM + emb)│
└─────────────┘
marque-web/
├── backend/ FastAPI service — Q&A, document ingestion, eval
├── frontend/ Next.js web app — landing + Q&A interface
├── .github/ CI/CD workflows
├── docker-compose.yml local dev orchestration
└── README.md you are here
Requires Docker, Node 20+, and Python 3.11+.
# Start backend + postgres
docker compose up -d postgres
cd backend && pip install -r requirements.txt && uvicorn app.main:app --reload
# Frontend (separate terminal)
cd frontend && npm install && npm run devOpen http://localhost:3000.
Copy .env.example to .env and fill in:
OPENAI_API_KEY— embedding + chat completionPINECONE_API_KEY/PINECONE_INDEX— vector storeDATABASE_URL— Postgres connection stringSENTRY_DSN— error tracking (optional in dev)
Actively developed. Roadmap and open issues live in the issues tab.
MIT — see LICENSE.