GitHub repo to architecture diagram
See the stack your code actually runs on.
StackPrism reads a repo’s manifests and config and draws its services, data stores, vendors and hosting as one diagram, with live vulnerability, end-of-life and outage checks on every part.
Map a repo
Connect GitHub and pick a repository and branch, public or private. StackPrism reads its manifests and config and draws the stack in about a minute.
Connect GitHub and map a repoFree with a Google sign-in. Read-only: nothing is written to your repo.
Rather not connect GitHub? Paste your config instead (the text of a docker-compose.yml, package.json or Terraform file) and get the diagram from that.
What a map looks like
This is the “B2B project management SaaS” example: 11 components grouped by where they run. It was designed from an idea rather than scanned, but a repo map is drawn the same way. Select a part to see what it does and what it connects to.
Pinch or use the buttons to zoom. See this example with its health checks
What the scan reads
Only the files that describe the stack: up to 60 of them, infrastructure first. Everything else in the repo is left alone, and folders like node_modules, vendor and build output are skipped.
- Package manifests
- package.json
- requirements.txt
- pyproject.toml
- Pipfile
- go.mod
- Cargo.toml
- Gemfile
- pom.xml
- build.gradle
- composer.json
- Containers
- Dockerfile
- docker-compose.yml
Kubernetes and Helm files in folders such as k8s/, helm/ or deploy/.
- Infrastructure as code
- *.tf
- Pulumi.yaml
- serverless.yml
CloudFormation templates too.
- Hosting config
- vercel.json
- netlify.toml
- fly.toml
- render.yaml
- railway.json
- wrangler.toml
- Procfile
- CI and deploys
- .github/workflows/*.yml
- .gitlab-ci.yml
- Jenkinsfile
- .circleci/config.yml
- Databases and environment
- schema.prisma
- drizzle.config.ts
- .env.example
The variable names in .env.example show which services you use.
- Where the backend lives
- app/api/**
- middleware.ts
- next.config.js
- supabase/functions/*
API routes, middleware, framework config, and Supabase or Netlify functions.
How it works
Connect GitHub
You approve access on GitHub and come straight back. GitHub only grants private-repo access through a scope that also allows writing, so to be clear: StackPrism only reads. It never pushes commits, opens pull requests or changes settings.Pick a repo and a branch
Any repo your GitHub account can see, public or private, on any branch.StackPrism reads the config
First it finds what it can prove without AI: frameworks, databases, vendors and hosting named in manifests and config. Then the AI draws the stack from those files, and the result is checked against what was found, so nothing detected goes missing.Get the diagram
Parts grouped by where they run, connected by how they talk to each other, at the level of the stack: one node per service or vendor, not one per file or route.Keep it checked
Stack Pulse checks every pinned dependency against OSV.dev and CISA’s list of exploited vulnerabilities, flags end-of-life runtimes and base images, and watches vendor status pages. Linked repos are re-checked every day, with an in-app alert when something critical turns up.
What you need
Mapping uses AI, so it needs a free account and a GitHub connection. The dependency check stays open to everyone.
No account
Mapping a repo needs a free account
- The dependency check for any public repo
- A shareable report with what to fix first
Free account
Sign in with Google, no card
- A monthly AI allowance: roughly 90 repo maps or 100 Prism Agent messages
- Daily re-checks of linked repos, with in-app alerts
- Ask Prism Agent when something started breaking: it reads the repo’s history
- Hand the stack to Claude Code, Cursor or Codex
Pro
$19.99 a month
- Auto-sync: the map is redrawn when the branch gets new commits
- 10× the monthly AI allowance
- Export diagrams as PNG, SVG and PDF
Questions
Does it work with private repos?
Yes, through your GitHub connection: you can map any repo your account can see. The no-sign-up dependency check only reads public repos, from GitHub’s public file host.
What does StackPrism store?
The diagram, the commit it was drawn from and which repo and branch you linked. Not your code: files are read during the scan, sent to the AI model that draws the diagram (OpenAI today), and discarded. Your GitHub token is encrypted at rest. The privacy policy has the details.
Can I get a diagram without connecting GitHub?
Yes: paste your config (the text of a docker-compose.yml, package.json or Terraform file) and StackPrism draws the stack from that. For a public repo’s dependency findings without a diagram, use the dependency check.
How big a repo can it map?
It reads up to 60 relevant files of up to 150 KB each, infrastructure first, from anywhere in the tree, and skips folders like node_modules, vendor and build output. If GitHub only lists part of a very large monorepo, the map covers that part and the app tells you so.
How do I keep the diagram up to date?
Re-scan whenever you like. Every linked repo’s dependencies are re-checked daily on the free plan, and with Pro the map itself is redrawn when the branch gets new commits. History keeps each version, and the repo timeline lists the commits that changed the stack.
Can my coding agent use the map?
Yes. Hand off writes a build brief for Claude Code, Cursor or Codex, and the MCP server lets the agent read the diagram, its health and the repo timeline itself.