You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
docs(readme): add framed UI screenshots, architecture diagram, and homepage polish
- "See it in action": framed browser-window screenshots of the Console & Studio —
dashboard, kanban, Gantt, calendar, gallery, object & flow designers, and the
AI assistant — captured from the live showcase + HotCRM apps
- "How it works": a generated architecture diagram (typed metadata -> compiled
artifact -> REST/SDK/Console&Studio/MCP, governed by Auth/RBAC/RLS/FLS/audit)
plus a real ObjectSchema code sample
- Fix stale Codebase Metrics (source packages 51 -> 72, test files 229 -> 676)
- De-duplicate the "built for AI / ~100x less code" messaging
- Collapse the long Package Directory into a <details> block
- Add assets under docs/screenshots/ (per the .gitignore convention)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: README.md
+75-5Lines changed: 75 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,6 +9,11 @@
9
9
10
10
**Try it in ~30s** — boot the [HotCRM](https://github.com/objectstack-ai/hotcrm) reference app on [StackBlitz](https://stackblitz.com/github/objectstack-ai/hotcrm) (no install). · Hosted platform: **[ObjectOS](https://cloud.objectos.app)**.
11
11
12
+
<palign="center">
13
+
<imgsrc="docs/screenshots/dashboard.png"width="900"alt="ObjectStack Console rendering an executive dashboard — KPI cards for revenue, accounts, contacts and leads, a revenue-trend area chart, and a revenue-by-industry donut, all defined as metadata">
14
+
<br><sub>The runtime <b>Console</b> rendering a dashboard defined entirely in metadata — KPI cards, charts, and scheduled reports.</sub>
15
+
</p>
16
+
12
17
## What is ObjectStack?
13
18
14
19
ObjectStack is an **open-source**, metadata-driven backend for building business applications that AI agents can understand, operate, and audit safely — self-hostable, with your data on your own database.
@@ -32,9 +37,71 @@ All core definitions start with **Zod schemas** (1,600+ exported schemas across
32
37
33
38
See [ARCHITECTURE.md](./ARCHITECTURE.md) for the full microkernel and layer architecture documentation, and [content/docs/concepts/north-star.mdx](./content/docs/concepts/north-star.mdx) for the product north star (metadata protocols · environment-aware runtime · compiled app artifacts).
34
39
40
+
## See it in action
41
+
42
+
ObjectStack ships a runtime **Console** and a visual **Studio** on top of the same metadata — every object, view, dashboard, flow, and permission you declare in code is immediately explorable, editable, and operable in the browser.
43
+
44
+
**One object, every view.** The same `task` records — rendered as a board, a Gantt schedule, a calendar, or a cover gallery. View types are metadata, and the per-view bindings (kanban group-by, Gantt start/end/progress, calendar date, gallery cover) are auto-derived from the object, so switching layout takes no extra UI code.
45
+
46
+
<palign="center">
47
+
<imgsrc="docs/screenshots/kanban.png"width="49%"alt="Kanban board grouping tasks across Backlog, To Do, In Progress, In Review, and Done columns">
48
+
<imgsrc="docs/screenshots/gantt.png"width="49%"alt="Gantt schedule with colored task bars, milestone diamonds, and a today marker">
49
+
</p>
50
+
<palign="center">
51
+
<imgsrc="docs/screenshots/calendar.png"width="49%"alt="Month calendar with task events placed on their due dates">
52
+
<imgsrc="docs/screenshots/gallery.png"width="49%"alt="Gallery of task cards with cover images, assignees, and status badges">
53
+
</p>
54
+
<palign="center"><sub><b>Board</b> · <b>Gantt</b> · <b>Calendar</b> · <b>Gallery</b> — the same records, four visualizations, zero extra UI code (grid, timeline, and map ship too).</sub></p>
55
+
56
+
**Model and automate.**
57
+
58
+
<palign="center">
59
+
<imgsrc="docs/screenshots/modeling.png"width="49%"alt="Studio object designer showing the Opportunity object's typed fields, lookups, and layout sections">
60
+
<imgsrc="docs/screenshots/automation.png"width="49%"alt="Studio flow designer showing a visual DAG that enrolls leads into a campaign">
61
+
</p>
62
+
<palign="center"><sub><b>Model</b> business objects as typed metadata — fields, relations, validation, sections · <b>Automate</b> with flows that compile to analyzable metadata.</sub></p>
63
+
64
+
**Ask your data.**
65
+
66
+
<palign="center">
67
+
<imgsrc="docs/screenshots/ask-ai.png"width="860"alt="AI assistant answering questions about records using the same metadata and permissions">
68
+
<br><sub>AI agents act through the same objects, actions, and permissions you defined — agent-ready by construction, not bolted on.</sub>
69
+
</p>
70
+
71
+
## How it works
72
+
73
+
Everything is **typed metadata**. Author a business object once — fields, a color-coded picklist, validation, all declarative:
74
+
75
+
```ts
76
+
import { ObjectSchema, Field } from'@objectstack/spec/data';
From that single schema, ObjectStack compiles a running backend — the database table, an auto-generated REST API and typed client SDK, the Console & Studio UI (list, board, calendar, Gantt…), and MCP tools for agents — all behind the same permissions, over a database you host.
97
+
98
+
<palign="center">
99
+
<imgsrc="docs/screenshots/architecture.png"width="940"alt="ObjectStack architecture: author typed Zod metadata (objects, flows, views, policies); the microkernel runtime compiles it into a versioned JSON artifact and loads plugins, drivers, and services; it generates a REST API, client SDK, Console and Studio UI, and MCP tools used by developers and AI agents — all governed by Auth, RBAC, RLS, FLS, and audit, over PostgreSQL, MySQL, SQLite, or MongoDB">
100
+
</p>
101
+
35
102
## Key Features
36
103
37
-
-**Built for AI, not retrofitted** — Business objects, permissions, flows, APIs, and UI are declared as typed metadata, not hand-written. A typical enterprise module collapses from tens of thousands of lines of CRUD/glue into a few hundred lines of declarative schema — **roughly two orders of magnitude less code**, small enough for an AI agent to load end-to-end and safely refactor across data, API, UI, and permissions in a single change.
104
+
-**Built for AI, not retrofitted** — Objects, permissions, flows, APIs, and UI are declarative typed metadata, not hand-written code — small enough for an AI agent to load and safely refactor end-to-end.
38
105
-**Agent-ready metadata** — Business objects, actions, and permissions are explicit enough for AI agents to inspect and use.
39
106
-**Automatic tool surface** — Metadata can power REST APIs, client SDKs, UI views, and MCP tools without redefining each action by hand.
40
107
-**Protocol-first schemas** — All schemas are defined with Zod; TypeScript types are derived via `z.infer<>`.
@@ -52,8 +119,6 @@ See [ARCHITECTURE.md](./ARCHITECTURE.md) for the full microkernel and layer arch
52
119
53
120
## Why AI-native?
54
121
55
-
**Built for AI, not retrofitted.**
56
-
57
122
Most internal-tool and low-code platforms were designed for humans clicking screens. AI support is usually added later as a chat box that can call a few predefined queries. ObjectStack starts from a different assumption: **AI agents need a structured, bounded, and auditable business backend before they can safely perform real work** — and the entire business system has to be small enough to fit in an agent's context window.
58
123
59
124
A typical enterprise application is tens of thousands of lines of CRUD, forms, queries, permissions, and API glue spread across dozens of files. ObjectStack collapses the same surface into a few hundred lines of typed metadata — **roughly two orders of magnitude less code for a developer (or an AI agent) to read, write, and maintain.**
<summary><b>72 published packages</b> across core, engine, drivers, client, plugins, services, adapters, tools, and examples — click to expand.</summary>
0 commit comments