How marlandoj/reporeel works
RepoReel turns public GitHub repository, pull-request, release, or compare data into a narrated, shareable explainer video. The main flow is submission, GitHub fact collection, script generation and optional human review, local voice synthesis, composition and rendering, then publication. Separate capabilities include the web studio and watch pages, an optional Keynote renderer, and ASD-STE100 checking and rewriting tools. Pipeline and review relationships are visible in excerpts; several server routes and subsystems are documented but not shown in detail, so their connections are limited.
Main entry points: pipeline.ts Generation pipeline · server.ts HTTP server · review.ts Script review · script.ts Script generation
Components 24
User entry
- Studio and UI
src/lib/ui.ts - Site pages
src/lib/site.ts - HTTP server
src/server.ts
Reel generation
- Generation pipeline
src/lib/pipeline.ts - GitHub ingestion
src/lib/github.ts - Script generation
src/lib/script.ts - Script review
src/lib/review.ts - Job options
src/lib/options.ts
Jobs and delivery
- Generation controls
src/lib/controls.ts - Job queue
src/lib/queue.ts - Job database
src/lib/db.ts - Job files
src/lib/files.ts - Watch and reel pages
src/lib/ui.ts
STE100 tools
- STE100 page
src/lib/ste100page.ts - STE100 API
src/lib/steapi.ts - STE100 rule engine
src/lib/ste100.ts - Quick reference
src/lib/ste100page.ts
Composition and rendering
- Local voice synthesis
src/lib/tts.ts - HyperFrames composition
src/lib/compose.ts - Video rendering
src/lib/render.ts - Caption generation
src/lib/captions.ts - Keynote renderer
src/lib/huashu.ts
Other components
- Visitor / operator
- GitHub API
Connections 29
- Visitor / operator → Studio and UI: submits URL
README.md - Studio and UI → HTTP server: sends requests
src/server.ts - HTTP server → Site pages: serves pages
src/server.ts - HTTP server → Job queue: dispatches jobs
src/server.ts - HTTP server → Script review: routes review
src/server.ts - HTTP server → STE100 API: routes checks
src/server.ts - HTTP server → STE100 page: serves tool
src/server.ts - Generation pipeline → GitHub ingestion: fetches facts
src/lib/pipeline.ts - GitHub ingestion → GitHub API: requests repository data
src/lib/github.ts - Generation pipeline → Script generation: generates script
src/lib/pipeline.ts - Generation pipeline → Local voice synthesis: synthesizes narration
src/lib/pipeline.ts - Generation pipeline → HyperFrames composition: builds composition
src/lib/pipeline.ts - Generation pipeline → Keynote renderer: selects alternate renderer
src/lib/pipeline.ts - Generation pipeline → Video rendering: renders video
src/lib/pipeline.ts - Generation pipeline → Job files: cleans render files
src/lib/pipeline.ts - Script review → Generation pipeline: reads and saves script
src/lib/review.ts - Script review → Script generation: rewrites scene
src/lib/review.ts - Script review → Job database: updates job
src/lib/review.ts - Script generation → Generation controls: requests AI generation
src/lib/script.ts - Script generation → STE100 rule engine: uses plain-language rules
src/lib/script.ts - HyperFrames composition → Caption generation: builds captions
src/lib/compose.ts - Keynote renderer → Caption generation: builds captions
src/lib/huashu.ts - Job queue → Job database: stores job state
src/lib/queue.ts - Job queue → Generation pipeline: runs generation
src/lib/queue.ts - Site pages → Studio and UI: links to studio
src/lib/site.ts - Watch and reel pages → Job database: shows reel status
src/lib/ui.ts - STE100 page → STE100 API: requests analysis
src/lib/ste100page.ts - STE100 API → STE100 rule engine: checks and rewrites text
src/lib/steapi.ts - STE100 page → Quick reference: offers download
src/lib/ste100page.ts