How antho-ni/study-kit-generator works
Study Kit Generator accepts study documents and returns AI-generated notes, flashcards, and quizzes. The main workflow runs from a user upload through the React client to FastAPI, where the generate route validates and extracts document text, optionally chunks and summarizes it, then requests structured study materials from Groq. The client displays the results and saves kits in browser history. The README also documents PDF, DOCX, PPTX, and TXT support and a 15 MB limit. Some frontend views and extraction details were not sampled, so their internal behavior is represented only at the documented level.
Main entry points: StudyKitContainer.jsx Study Kit Flow · generate.py Generate Routes · client.js API Client · ai_generator.py AI Generation
Components 17
Study Kit Client
- React App
frontend/src/App.jsx - Study Kit Flow
frontend/src/components/StudyKitContainer.jsx - Document Upload
frontend/src/components/UploadZone.jsx - API Client
frontend/src/components/api/client.js - Kit History
frontend/src/utils/history.js
API Orchestration
- FastAPI App
backend/app/main.py - Generate Routes
backend/app/routers/generate.py - Result Schemas
backend/app/models/schemas.py
Document and AI Processing
- Text Extraction
backend/app/services/extraction.py - Text Chunking
backend/app/services/chunking.py - AI Generation
backend/app/services/ai_generator.py
Study Materials
- Notes View
frontend/src/components/tabs/NotesView.jsx - Flashcards View
frontend/src/components/tabs/FlashcardsView.jsx - Quiz View
frontend/src/components/tabs/QuizView.jsx
Other components
- Learner
- Browser Storage
- Groq AI
Connections 24
- Learner → Document Upload: selects document
- React App → Study Kit Flow: renders
- Study Kit Flow → Document Upload: renders
- Document Upload → Study Kit Flow: provides file
- Study Kit Flow → API Client: requests generation
- API Client → FastAPI App: sends upload
- FastAPI App → Generate Routes: mounts routes
- Generate Routes → Text Extraction: extracts text
- Generate Routes → Text Chunking: chunks long text
- Generate Routes → AI Generation: generates kit
- AI Generation → Groq AI: requests completion
- Groq AI → AI Generation: returns generated content
- AI Generation → Result Schemas: validates output
- Generate Routes → Result Schemas: declares response
- FastAPI App → Study Kit Flow: returns kit
- Study Kit Flow → Notes View: supplies notes
- Study Kit Flow → Flashcards View: supplies cards
- Study Kit Flow → Quiz View: supplies questions
- Study Kit Flow → Kit History: loads and saves kits
- Kit History → Browser Storage: reads and writes
- Flashcards View → API Client: requests regeneration
- Quiz View → API Client: requests regeneration
- API Client → Generate Routes: posts regeneration
- Generate Routes → AI Generation: regenerates item