What is Graview?
Graview is a framework for building apps that people and AI agents work in together. You declare your domain once, in TypeScript: the kinds of thing, the fields on each, the relations between them, the actions that change them, the rules they have to keep, and who may do what.
Graview reads that declaration and builds the application from it. A person gets a scene they can fly over, where each kind is a district and each record is a block, plus an ordinary routed web app. An agent gets a typed tool for every action, served over MCP and held to the same permissions and rules as a person.
Why We Built It
Most app frameworks make you build the interface, the permissions and the API separately, then keep them in step by hand. Add an agent and you have a fourth copy: a set of tools wired up on the side, doing things you can't easily watch or take back.
Those copies drift. A rule lives in a form validator but not in the API. A role can't press a button, but its agent can still call the tool. The parts that matter most, like the shift nobody covered or the requirement nobody answered, are absences, and they are hard to see in a list of rows.
We built Graview so all of that comes from one place. Change the declaration and the screens, the buttons, the agent's tools and the checks change with it.
A Hands-On Way to Watch an App Follow Its Declaration
The site is the demo. A community garden runs live on graview.dev, and you can drag the ground, zoom out, press a district, or switch it over to its pages.
The walkthrough builds the same garden one declaration at a time, across sixteen steps. Step one is one kind and one action, and the city, the form and the routed pages already exist. A few steps later, a rule shows up on the map and offers its own fix. Later still, an agent gets a seat, and its changes land in the same log as everyone else's.
To start your own:
npm create graview@latest my-app
It needs Node 22 or later. It writes a running product for your domain: the declaration split into domain and interface, an eighty-line shell made of framework parts you can replace, a test, a CI workflow, and the authoring skills installed where Claude Code and Codex look for them.
Built Around One Declaration, Then Everything It Gives You
- Two faces, one address. Every record has a place in the scene and a page on the web. The routed face gives you a home page, a list per kind, a record per thing, a form per action and a problems page, all working at phone width. Keep the pages you like and design the rest yourself.
- Rules that offer a way out. A rule names the actions that would fix what it finds. When a rule breaks, the interface says so in a sentence and offers the repair as a button, to a person or to an agent.
- Lenses that move between domains. A timeline, a calendar, a coverage matrix, a board and a plan. Lenses bind to roles like "what starts" and "what ends," not to your field names, so a calendar written for a volunteer rota works unchanged over a garden.
- The same buttons for your agent. Every action is also a typed tool with a sentence attached, narrowed by the same permissions a person has. When a model proposes a change, you read it as a plan before it lands, and it applies as one batch with one undo.
- History you can read. Every change is an operation with an author and an intent. You can undo one change out of order, and the log tells you what blocks it if something does.
- A checker that talks in sentences. graview check knows 89 findings, and when the declaration is wrong it says what is wrong, in words.
- Yours to run. Serve the store over HTTP, with your data in a folder you can open or in SQLite. Your code, your repository, your servers.
Graview is at 0.1, and pre-1.0 on purpose. The public API is meant to be depended on, but it still moves between minor versions. The site says plainly what isn't done yet: the GPU capture path is experimental, the calendar sync hasn't run against Google, and nobody has done a screen-reader pass with real assistive technology.
Useful for Developers Whose Hard Part Is the Relationships
This is for developers building scheduling, coverage, planning and operations tools, where the hard part is how things relate and a form per table was never the interface anyone wanted.
The four example apps on the site show what that looks like: a volunteer rota, a tender response, a coaching week and a household week. Each one was built to test a specific claim about the framework.
If you would rather describe an app in a chat than write one, Graview Cloud is the hosted product built on the same packages.
Built to Make the Idea Click
Some frameworks help you draw screens. Graview starts one step earlier, with what your domain is made of.
Graview exists so more people can see an app, its rules and its agent come from a single declaration, and keep all three in step without doing it by hand. It is open under the Elastic License 2.0, so you can build on it and ship products with it.