# Introduction (/introduction)



OpenIslands is a local-first compiler and runtime for **agent-maintained data apps**. An
app is a typed **manifest** of reusable visual **islands** bound to **typed data contracts**
built from files you own. You edit the manifest; you never write rendering code. The point
is that an agent can maintain a dashboard for months without it rotting.

* **Declarative.** A dashboard is a JSON manifest of islands bound to datasets.
* **Typed and safe.** Every binding is checked against your live data. A missing field fails
  the build and names the island, so a dashboard can't silently break.
* **Local-first.** Your files are the source of truth. The runtime queries them live, so there
  are no snapshots to drift out of date.

The headline use is an agent maintaining the dashboard for you over the
[MCP server](/mcp.md), in Code Mode — one `execute` tool it programs against the `oi` API: it reads
the manifest and your data, stages a manifest edit, sees the diff, applies it, and rolls back if it
was wrong. Every change is validated and snapshotted, so the agent can't hand-edit your files, ship
a broken binding, or make a change you can't undo.

## Start here [#start-here]

* [Getting Started](/getting-started.md): point an agent at a project and let it build the
  dashboard. The CLI path is here too.
* [MCP Server](/mcp.md): Code Mode and the safe edit loop the agent runs.
* [The Manifest](/concepts/manifest.md): how an app is described.
* [Data Contracts](/concepts/data-contracts.md): how islands bind to data.
* [Islands](/islands/overview.md): the visual building blocks, with live previews.


---

*This is one page of the OpenIslands docs. Every page in one file: [/llms-full.txt](/llms-full.txt). Page index: [/llms.txt](/llms.txt). Links above point to `.md` siblings — append `.md` to any page URL for its raw markdown.*
