ODS Pages

Vibe Coding data-driven apps with Guardrails

Describe your app in plain JSON. An AI Build Helper writes it for you. A framework renders it instantly — on desktop, mobile, or the web. Your data stays under your control. And if you ever need a more complex solution, there is an off-ramp: generate real source code that you own and can modify in any way you want.

View on GitHub
"One does not simply do complex things,
but One Does Simply do simple things."

The Problem

Citizen developers have two paths today — and both have traps.

Low-Code Platforms

Start simple, then drown you in complexity. Expect you to be a designer. Lock in your data and your app.

Vibe Coding with AI

AI builds something fast — but you can't verify it, can't secure it, and can't maintain it. No guardrails.

The ODS Solution

ODS gives you the best of both worlds: the speed of AI-assisted building with the safety of a structured specification.

📄

The Specification

A simple, open JSON schema that describes what your app does — pages, forms, lists, buttons. Human-readable. AI-writable. Portable.

🚀

Frameworks

Renderers that bring your spec to life with professional UI, local storage, and smart defaults. Complexity is the framework's job.

🤖

Build Helper

An AI assistant that turns your idea into a valid ODS spec through conversation. It can only produce specs that work — that's the guardrail.

Vibe Coding with Guardrails

Traditional vibe coding lets AI generate arbitrary code you may not understand. ODS flips the model: the AI produces a structured JSON spec that's validated, human-readable, and constrained to safe patterns. The framework handles the hard parts — UI, storage, security — so the AI never has to. You get the creative speed of vibe coding with the confidence that your app actually works, your data is safe, and you're never locked in.

Two Frameworks, One Spec

Write your spec once and run it anywhere. ODS currently ships two production-ready frameworks:

Flutter Local

Desktop & mobile. SQLite storage on-device. Perfect for personal apps and offline-first use. No server required.

React Web

Web-based with PocketBase backend. Built-in multi-user auth, self-registration, and role-based access. Perfect for team apps.

Both frameworks support the full ODS spec: forms, lists, charts, settings, help, tours, data export, code generation, and more. Multi-user apps with role-based access control work across both.

The Off-Ramp

Unlike other platforms, ODS never locks you in. Your spec is a standard JSON file you own. When you outgrow the framework, generate real source code — a full Flutter project or React application with models, database helpers, and UI widgets — and customize without limits. ODS is the on-ramp to real development, not a dead end.

Example Apps

Browse example specs to see what ODS apps look like:

View the full catalog (JSON)

Getting Started

For personal/desktop apps (Flutter Local):

1. Download the Flutter Local Framework and run it.
2. Pick some example apps to explore — or tap Create New to build your own with the AI Build Helper.
3. When you're ready to move on, use Export Data or Generate Code from the app menu.

For multi-user web apps (React Web):

1. Install PocketBase and start it locally.
2. Clone the React Web Framework, run npm install && npm run dev.
3. Log in as the PocketBase admin, load specs, and share app URLs with your team.