How sindhujakumari211/ai-notes-generator works
This is a Streamlit application that turns a YouTube lecture into transcript-grounded study materials. The primary workflow starts with a URL, retrieves metadata and audio, transcribes locally, then cleans and chunks the transcript before generating notes and assessments through an LLM pipeline. Results are displayed, analyzed, exported, and optionally saved for later reopening. The README documents additional outputs and capabilities beyond the sampled source; those are represented where their owning modules are clear, while uncertain internal wiring is omitted.
Main entry points: pipeline.py Workflow orchestrator · app.py Main app · generator.py LLM generation · summarizer.py LLM summarization
Components 21
User interface
- Main app
app.py - History page
pages/1_History.py - Settings page
pages/2_Settings.py - Result views
ui/components.py
Lecture ingestion
- YouTube access
utils/youtube.py - Transcription
utils/transcript.py - Transcript cleaning
utils/cleaner.py - Transcript chunking
utils/chunking.py
Content generation
- Workflow orchestrator
pipeline.py - Six-stage prompts
llm/prompts.py - LLM generation
llm/generator.py - LLM summarization
llm/summarizer.py - Provider client
llm/client.py
Results and persistence
- Result schemas
models/schemas.py - Lecture analytics
utils/analytics.py - Markdown rendering
utils/markdown.py - Document exports
utils/exporters.py - Run history
utils/database.py - Saved runs
Other components
- Learner
- LLM provider
Connections 23
- Learner → Main app: submits URL
- Main app → Workflow orchestrator: starts run
- Workflow orchestrator → YouTube access: fetches video
- Workflow orchestrator → Transcription: transcribes audio
- Workflow orchestrator → Transcript cleaning: cleans transcript
- Workflow orchestrator → Transcript chunking: chunks transcript
- Workflow orchestrator → LLM generation: generates materials
- Workflow orchestrator → LLM summarization: summarizes chunks
- LLM generation → Six-stage prompts: builds prompts
- LLM summarization → Six-stage prompts: builds prompts
- LLM generation → Provider client: requests completion
- LLM summarization → Provider client: requests completion
- Provider client → LLM provider: sends requests
- Workflow orchestrator → Result schemas: assembles results
- Workflow orchestrator → Lecture analytics: builds metrics
- Workflow orchestrator → Markdown rendering: renders document
- Workflow orchestrator → Run history: saves run
- Main app → Result views: renders results
- Result views → Document exports: offers downloads
- Learner → History page: browses runs
- History page → Run history: loads or deletes
- Run history → Saved runs: stores records
- Settings page → YouTube access: checks FFmpeg