Skip to content

ALikesToCode/VeriLearn-Exam-Pack-gemini-hackhathon-ai-project

Repository files navigation

VeriLearn Exam Pack (Next.js)

Repository: https://github.com/ALikesToCode/VeriLearn-Exam-Pack-gemini-hackhathon-ai-project

A full-stack Next.js app that turns YouTube lecture playlists into evidence-backed exam prep: blueprint, notes with timestamps, question bank, mock exam, mastery tracking, exports (PDF/HTML/CSV/TSV), and a live coach.

Quick start

npm install
npm run dev

Open http://localhost:3000 and paste a playlist or a list of video URLs. Provide your YouTube + Gemini API keys in the UI.

If you want Turbopack instead of webpack for local dev, run:

npm run dev:turbo

Features

  • Playlist ingestion via YouTube Data API
  • Transcript grounding from YouTube timed text + storyboard keyframes (optional frame capture)
  • Optional Gemini video understanding fallback when transcripts are missing
  • Gemini Pro for notes + questions
  • Gemini Flash for verification gates
  • Mock exam with grading + remediation links
  • Remediation plans grouped by weak topics
  • Mastery tracking with spaced repetition cadence + adaptive practice sets
  • Exports: PDF + HTML + Anki CSV/TSV
  • Shareable pack pages (/pack/:packId) and export buttons in the pack viewer
  • Saved pack list + delete
  • Coach / Viva / Assist chat mode (streamed + optional Live API)
  • Live API with ephemeral tokens (POST /api/live-token) for client-to-Gemini sessions
  • Optional TTS endpoint (POST /api/tts) for Gemini 2.5 TTS models
  • Browser Use Cloud assist tasks (prefix messages with browser:)
  • Deep research via Gemini agent (optional) or Serper search (optional API key)
  • Resume generation via job id
  • File Search store grounding (vault upload)
  • Interactions API toggle for structured outputs (optional)
  • Study schedule generated from exam date

Deployment (Vercel)

  1. Deploy the repo to Vercel.
  2. Add Vercel KV if you want persistence across serverless invocations.
  3. The UI collects API keys from the user, so no secrets are required at build time.

If KV is not configured, the app falls back to a local JSON file store in data/ (dev only).

Live API (ephemeral tokens)

The coach can connect directly to Gemini Live API using ephemeral tokens generated by POST /api/live-token. This avoids running a WebSocket proxy in the app while keeping keys off the client. Live API models are separate from the default Gemini 3 models.

Docs

  • docs/ARCHITECTURE.md
  • docs/DEMO_SCRIPT.md
  • docs/TESTING.md

Notes

  • Transcripts are fetched from YouTube timed text endpoints; some videos may not expose captions.
  • For best results, keep playlists under 20-30 lectures per run to avoid long generation times.
  • Models are configurable in the UI (defaults: gemini-3-pro-preview, gemini-3-flash-preview).
  • For Deep Research search, supply a Serper API key in the UI (optional).
  • Deep Research agent mode does not require external search keys.
  • File Search uses the Google Gen AI SDK and requires vault docs (optional).
  • Frame capture requires ffmpeg on PATH and ENABLE_FRAME_CAPTURE=1.
  • File Search and Interactions API support require Node.js 20+.
  • Upload PDFs/TXT in the Vault section to ground generation against syllabus or slides.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published