an AI study assistant i built for a hackathon. you create subjects, upload your notes/slides, and it quizzes you, explains stuff, or generates mock exams based on what you uploaded. pretty useful honestly
- create different subjects (like "ML" or "OS" or whatever)
- upload your lecture notes, slides, pdfs etc
- 3 modes:
- Explain — just chat with it, ask it to explain stuff
- Quiz Me — it generates 5 questions from your notes, focuses on weak topics if it remembers them
- Mock Exam — generates a full exam. if you upload an exam schema it'll actually follow the format
it remembers what topics you're bad at across sessions which is kinda cool
- Next.js 14 (app router)
- Tailwind CSS
- Backboard API (for the AI assistant + document indexing)
- localStorage (no database lol, keeps it simple)
you need a Backboard API key. create a .env.local file in the root:
NEXT_PUBLIC_BACKBOARD_API_KEY=your_key_here
then just:
npm install
npm run devopen http://localhost:3000 and you're good
on first load it creates an AI assistant via the Backboard API and saves the ID to localStorage. each subject you create is actually a "thread" in Backboard. when you upload a file it polls until the document is indexed, then you can start chatting.
all the API calls are in lib/backboard.ts if you want to look
/app
page.tsx - main shell (sidebar + content)
layout.tsx
/components
Sidebar.tsx
SubjectView.tsx
ChatArea.tsx
DocumentsPanel.tsx
ModeSelector.tsx
CreateSubjectModal.tsx
Toast.tsx
/lib
backboard.ts - all API calls
storage.ts - localStorage helpers
/types
index.ts - typescript types
- no user auth (everything is stored locally per browser)
- file upload can be slow depending on document size
- probably doesn't work great on mobile
built with Next.js 16 + React 19. uses react-markdown so the AI responses render properly with formatting and stuff