haydenschmitty/floorplan
See how your app actually fits together. An interactive, plain-English map of your codebase, drawn by Claude or Codex.
About haydenschmitty/floorplan
haydenschmitty/floorplan is an open-source project on GitHub, mainly written in JavaScript. See how your app actually fits together. An interactive, plain-English map of your codebase, drawn by Claude or Codex. It currently holds 322 stars and 31 forks with 6 open issues, and was last pushed on 2026-10-29 (repository created 2026-10-27).
Project Overview
Git Homed tracks it on the Today's Trending board, currently at rank #21 with 0 new stars today.
GitHub Repository Details
README
Floorplan
See how your app actually fits together.
Claude or Codex reads your codebase and draws an interactive map of it. Every part, file and web request gets a plain-English name, and every connection between them is shown.
Try the live demo · Watch the video · Install · Quick start · Features · See it in action · How it works · Docs · FAQ
▶ Watch the walkthrough: installing Floorplan, then a tour of Brewline, a demo coffee-subscription app built across four repos.
Try the live demo → Explore the Brewline map in your browser, no install needed.
Why Floorplan?
You built an app, probably with a lot of help from AI, and it works. But ask "what happens when someone checks out?" or "what breaks if I change this?" and the honest answer is no idea.
Floorplan gives you the diagram nobody drew. Ask Claude Code or Codex for a floorplan and a few minutes later you have a map you can explore, ask questions on, and keep up to date as you work.
- For builders: understand the app you made, in your own words, without reading the code.
- For teams: onboard someone in minutes, from the big picture down to the exact file.
- For working with AI: after every change Claude or Codex makes, see exactly which parts it touched and why.
Features
|
🗺️ A map at every zoom |
💬 Plain English everywhere |
|
🔌 Real connections, across repos |
🖥️ Start from a screen |
|
🧭 Ask the map |
🩺 Health check |
|
🟢 Recent work |
⚡ Stays current, stays yours |
Plus guided flows you can request in plain words, a one-minute Start here tour, search, keyboard shortcuts, and right-click actions on every card.
See it in action
Want to click around yourself? Open the live demo: the real Brewline map beside a scripted conversation, in Claude Code or Codex.
Ask the map. A real answer, from the Claude Code CLI in 31 seconds. It traced the gift from form to inbox across two repos, and spotted two bugs along the way. |
Start from a screen. Pick any page and see everything behind it, from the button down to the database and outside services. |
Recent work. What you asked for, what changed, and why each change was needed, on one board. |
Health check. A password left in the code and an endpoint anyone can call, each with a one-click fix prompt. |
Zoom in. Inside any part: what's in it, what uses it, and what it relies on. Green tags mark what just changed. |
Guided flows. Watch a request travel through the app step by step, or ask for a new one to be traced. |
Install
You need Node.js 18+ and either Claude Code or Codex. Floorplan runs on the plan you already have, with no API keys.
Claude Code
In the desktop app's Code tab or the CLI:
claude plugin marketplace add haydenschmitty/floorplan
claude plugin install floorplan@floorplan
Start a new session and it's ready. Installing the Claude Code CLI is recommended even if you use the desktop app, because it lets the map's Ask bar read your real code. More in Getting started.
Codex
Signed in with ChatGPT. No terminal needed:
1. In the Codex app, open Plugins and choose Add a marketplace.
2. For Source, enter haydenschmitty/floorplan and click Add marketplace.
3. Find Floorplan and click + to install it.
Or, from a terminal:
codex plugin marketplace add haydenschmitty/floorplan
codex plugin add floorplan@floorplan
Start a new chat and ask for a floorplan, or type $floorplan. The map's Ask bar runs on your own Codex sign-in, with no API key. More in Floorplan in Codex.
Quick start
1. Open your project in Claude Code or Codex. For a frontend and backend in separate repos, open the folder that holds both. 2. Ask: > Make me a floorplan of this app.
(In Codex you can also type $floorplan.)
3. Explore. The map opens on its own, starting with a short tour.
When you've done more work, ask:
Update the floorplan.
Only what changed is re-read, and what you just worked on lights up under Recent work.
Things to try
| Ask Claude Code or Codex | Ask the map | |---|---| | "Make me a floorplan of this app" | "What happens when someone places an order?" | | "Update the floorplan" | "Where do we talk to Stripe?" | | "Fix the important issues from the floorplan's Health check" | "If I change the users table, what breaks?" | | "Add a flow showing how a new user signs up" | "Which files handle login?" | | "Rewrite the floorplan for developers" | "What did we change for refunds?" |
How it works
flowchart LR
code["Your codebase
one repo or several"] --> scan["Scan
files, imports, routes, requests"]
scan --> agent["Claude or Codex
names the parts, describes every file"]
agent --> build["Build
map, health, screens, recent work"]
build --> map["floorplan/index.html
opens in your browser"]
map -. "update the floorplan" .-> scan
Scripts do the mechanical work: finding repos, parsing code in a dozen languages, matching web requests to endpoints, laying out the map. They're plain Node with no dependencies. Claude or Codex does the part only a reader can: deciding what the parts of your app are, and saying so plainly. Details in How it works.
Languages: TypeScript, JavaScript, Python, Go, Rust, Java, Kotlin, Scala, plus Vue, Svelte and Astro files, with lighter support for others.
Endpoints: Express, Koa, Hono, Next.js, Firebase Cloud Functions, Flask, FastAPI, Django, Go's net/http, Gin, Echo and chi, Actix, Axum, Spring.
Screens: Next.js, React Router, Vue, SvelteKit, Remix, Nuxt, Astro, Expo, Angular, TanStack.
What it adds to your project
A floorplan/ folder holding the map. In Claude Code it also adds a short section to CLAUDE.local.md so future sessions know the map is there. Neither is committed: the folder ignores itself in git, and CLAUDE.local.md goes in your clone's private ignore list. In Codex, only the floorplan/ folder is added. Your .gitignore and other tracked files are never touched. See What's in your project.
Privacy
- The scan, the map and its small local server all run on your computer. The server only accepts connections from your own machine.
- No dependencies or install scripts, and the map works offline: its layout engine and fonts are built in.
- Questions on the map go to your own account, through the Claude Code CLI or Codex, which can read your code but not change it.
- The Health check never stores or shows secret values, only where they are.
- No analytics or tracking. The map may ask once whether you'd like an email when Floorplan Cloud launches. Nothing is sent unless you sign up, and then only your email and "just me" or "with my team".
Documentation
| | | |---|---| | Getting started | Install, first map, updating, removing | | Floorplan in Codex | Installing and using it in Codex | | Using the map | Every button, view, shortcut and menu | | How it works | The pipeline, connection matching, refreshes | | What's in your project | Every file Floorplan creates, and how to edit it | | Privacy and security | What runs where, and what leaves your machine | | Troubleshooting | Common problems and fixes | | Developing Floorplan | Repo layout, local installs, releases |
FAQ
Does my code leave my computer?
Only the way Claude Code and Codex always work: the AI reads the files it needs to describe your app, through your own account. The map itself is a local file and its server only listens on your machine. If you choose to open the map in the Claude app instead, Claude uploads the map (names, descriptions and structure, not your source code) to your private claude.ai account, and asks first. The one thing Floorplan itself ever sends is your email, and only if you sign up for the Floorplan Cloud waitlist.
How long does it take, and what does it cost?
A first map takes a few minutes for a small app and longer for a big one, because every file and endpoint gets described. It uses your Claude or ChatGPT plan like any other task. Big projects are split across parallel helpers. Updates re-read only what changed, so they're quick and cheap.
Do I need a CLI for the Ask bar?
No. The map works without one. The Ask bar answers through the Claude Code CLI or Codex, which can read your real code. Codex's desktop app already includes what it needs. With Claude, without the CLI you can ask from the Claude app instead, using the map alone.
Will it change or commit my files?
It only writes its own floorplan/ folder (and, in Claude Code, a section in CLAUDE.local.md), and neither is committed. It never changes your code, your .gitignore or your CLAUDE.md.
The names it picked aren't how we talk about it. Can I change them?
Yes. Just ask ("rename 'Main server' to 'Shop API' on the floorplan"), or edit floorplan/architecture.json and floorplan/descriptions/ yourself. Your edits are kept on every update.
Does it work with Codex as well as Claude Code?
Yes. It's the same plugin, the same map and the same Health check. Each app runs it on your own plan: Claude Code on your Claude account, Codex on your ChatGPT sign-in. A map made in one opens fine with the other. See Floorplan in Codex.
Does it work on monorepos and multi-repo setups?
Yes. Point it at a monorepo, a subfolder of one, or a plain folder that holds several repos side by side. It finds every repo and connects them.
Contributing
Issues and pull requests are welcome. See CONTRIBUTING.md and Developing Floorplan.
License
MIT © 2026 Hayden Smith
