Turn any public or private GitHub repository into an interactive architecture diagram, or watch it explained in a one-minute narrated video.
Try GitDiagram → · Or replace hub with diagram in any GitHub repository URL.
SMS, WhatsApp, and RCS through one API. Try Sent →
GitDiagram can now turn a repository into a narrated video of about a minute. The video starts with what the project is for and what people do with it, then shows briefly how its main parts fit together and one decision under the hood.
- Watch the gallery → or add
/videoto any diagram URL, such asgitdiagram.com/owner/repo/video. - Download an MP4 in landscape or vertical (9:16), with captions burned in.
- Making new videos is in early access. Anyone can watch videos that already exist.
- Watch a repository explained in a narrated video, or press Video on any diagram page.
- Explore the architecture with an AI-generated diagram and streamed explanation.
- Jump to the code by clicking any component's linked file or directory.
- Use private repositories with a GitHub token via Private Repos in the header.
- Export diagrams as PNG or copy the Mermaid source.
Requires Bun, Cloudflare R2, Upstash Redis, and an OpenAI or OpenRouter API key. See the setup guide for prerequisites and configuration.
git clone https://github.com/ahmedkhaleel2004/gitdiagram.git
cd gitdiagram
bun install
cp .env.example .envFill in .env using the configuration guide, then start the app:
bun run devOpen localhost:3000.
Explainer videos are off by default. To turn them on, set VIDEO_EXPLAINER_ENABLED=1, NEXT_PUBLIC_VIDEO_EXPLAINER=1, ANTHROPIC_API_KEY, OPENAI_API_KEY and OPENROUTER_API_KEY (for the voice) in .env. See .env.example for the other video settings.
Built with Next.js, React, TypeScript, Tailwind CSS, and Mermaid. Videos use Claude or GPT for the script and scenes and OpenRouter (Gemini 3.8 Flash TTS) for the voice. Deployed on Vercel.
- Architecture — generation pipeline, storage, and API
- Development guide — setup, checks, and deployment
- Deployment recovery — Railway/Docker fallback
Contributions are welcome. Open an issue or pull request with a focused description and verification notes.
Inspired by Romain Courtois's Gitingest.


