A while back I started noticing that every time I needed to put together a C4 architecture diagram, I ended up copying from an old diagram, wrestling with a general-purpose diagramming tool, or just sketching something in a notes app. Nothing felt right for architecture modelling specifically.
So I started building something. This is a hobby project — something I work on in my spare time, driven entirely by curiosity and the fact that I think the tooling space here has room for something cleaner.
The result is Arch Atlas — a web-based tool for creating and evolving C4 architecture models and diagrams. The first version is now live.
What is C4?
The C4 model is a way of thinking about software architecture at four levels of abstraction: Context, Containers, Components, and Code. Each level zooms in a little more, letting you describe a system from the outside-in without needing one giant diagram that tries to show everything at once.
It’s practical, it communicates well across audiences (engineers, product, leadership), and it has a clear enough structure that tooling can actually help. That’s where Arch Atlas comes in.
What’s in the first version

The first version ships a working editor where you can:
- Create C4 models — start from scratch or build up from templates
- Lay out diagrams visually — drag, connect, and arrange elements on a canvas
- Navigate levels — move between Context, Container, and Component views of your system

It’s early. It works. It has a long way to go. It’s live at arch-atlas-studio.vercel.app.
What’s coming
The monorepo structure tells the story of what’s planned. There are three main areas I’ll be building out:
Apps
The studio (what’s live now) is the primary editing experience. There’s also a viewer component in the works — a lightweight, shareable read-only view of a model, useful for embedding diagrams in documentation or sharing with people who don’t need to edit.
Packages
This is where the deeper work lives. A few things I’m planning to pull together:
- C4 model core — a proper domain model for C4 concepts (systems, containers, components, relationships) that the editor is built on top of
- Rendering engine — separating rendering concerns so diagrams can be exported to different formats
- Import/export tools — the ability to bring in existing diagrams (from Structurizr DSL, for example) or export to standard formats
- UI component library — reusable visual components that could eventually be used independently
Services (optional / experimental)
There’s a placeholder for optional backend services — things like persistence, collaboration, or LLM integrations for generating or analysing architectures. These are further out and more exploratory.
Why I’m building this
I’m not building this because I think it’ll be meaningfully different from what already exists. There are good tools out there. This is more about seeing whether I can build something different — something more adaptable — and using it as a platform to explore ideas that I find interesting.
The one I’m most curious about: an LLM-powered importer that can take an existing codebase and generate a C4 model from it. No manual diagramming, no starting from scratch — just point it at a repo and get a starting architecture. Whether that’s actually useful is something I want to find out by building it.
That’s the real reason Arch Atlas exists.
I’m going to keep working on this. If you want to follow along, the code is at github.com/pavanandhukuri/arch-atlas and the app is live at arch-atlas-studio.vercel.app.
This is a hobby project. Expect rough edges, breaking changes, and slow progress. Also expect it to keep moving.