How pawan3890/ai-study-helper works
AI Study Helper serves a browser-based study workflow: students submit notes or files for summaries and quizzes, start a context-grounded tutor session, or request a leveled topic explanation. Express routes own these distinct tasks and call shared content utilities and the swappable AI provider; chat additionally keeps bounded session history in memory. The README documents a PDF/DOCX/TXT upload capability and provider choices. The graph shows the documented browser/API interaction; source excerpts confirm backend calls, while frontend request details are only partially sampled.
Main entry points: aiProvider.js AI gateway · server.js HTTP server · chat.js Tutor chat · summarize.js Summarizer
Components 14
Study interface
- Study UI
public/app.js
Study workflows
- HTTP server
server.js - Summarizer
routes/summarize.js - Quiz generator
routes/quiz.js - Tutor chat
routes/chat.js - Topic explainer
routes/explain.js
Shared services
- File extraction
middleware/upload.js - Content validation
utils/textUtils.js - Chat sessions
services/sessionStore.js - AI gateway
services/aiProvider.js
Other components
- Student
- Anthropic
- OpenAI
- OpenRouter
Connections 21
- Student → Study UI: uses
README.md - Study UI → HTTP server: sends API requests
README.md - HTTP server → Summarizer: routes requests
server.js - HTTP server → Quiz generator: routes requests
server.js - HTTP server → Tutor chat: routes requests
server.js - HTTP server → Topic explainer: routes requests
server.js - Summarizer → File extraction: extracts files
routes/summarize.js - Quiz generator → File extraction: extracts files
routes/quiz.js - Tutor chat → File extraction: extracts files
routes/chat.js - Summarizer → Content validation: validates and clamps
routes/summarize.js - Quiz generator → Content validation: validates and clamps
routes/quiz.js - Tutor chat → Content validation: clamps content
routes/chat.js - Topic explainer → Content validation: validates topic
routes/explain.js - Summarizer → AI gateway: generates summary
routes/summarize.js - Quiz generator → AI gateway: generates materials
routes/quiz.js - Tutor chat → AI gateway: generates reply
routes/chat.js - Topic explainer → AI gateway: generates explanation
routes/explain.js - Tutor chat → Chat sessions: reads and updates
routes/chat.js - AI gateway → Anthropic: dispatches generation
services/aiProvider.js - AI gateway → OpenAI: dispatches generation
services/aiProvider.js - AI gateway → OpenRouter: dispatches generation
services/aiProvider.js