Essentials
The model behind Contrast, in one read.
Everything in Contrast hangs off a few ideas. Read them once and the whole product makes sense.
Projects
A project is one app: its files, branches, settings, app data, and deploy history. Your account owns many. Each comes from a template (App, Game, or Website) and runs its own dev stack in the browser, so projects never interfere with each other.
Branches
A branch is an isolated copy of a project’s files with its own editor state. You branch to work without touching main, diff against main, and merge back. Agents always work on their own branches, so nothing lands in main without a review step. If you sync a project to GitHub, Contrast branches become real Git branches.
Previews
Web and iOS previews are two live views of the same code from the same dev stack. The web preview is your app in a browser. The iOS preview renders it natively through rnx, a React Native simulator built for the browser. Both hot-reload as you edit and both follow the branch you are on. They are different rendering engines, so check the surface you ship on.
Agents
You describe goals to Lux, your product partner in the chat. Lux relays the goal to the Manager, which plans the work, dispatches builder agents in parallel, and runs review and QA before anything lands. You watch progress in the Factory space and approve the result the same way you would review a teammate. More in Agents.
Data
App and Game projects include a backend: SQLite and a live sync engine, running in your browser during development. You describe tables in a schema file, run Generate and Migrate from the Run menu, and read and write through typed queries and mutators. Your previews share the data, and production gets the same stack for real. More in Data.
Spaces
The workspace is organized into sections, one per phase of work: Dev for editing and previews, Plan for specs, Factory for agent runs, and Production for shipping and then inspecting the live app. Every section is a tiling layout of panes you can resize and rearrange, and your layout persists. More in Spaces.
Production
Deploying puts your app on real infrastructure with a live URL, and the Production section shows the actual deployment, so production problems get debugged against production. From there you can attach a custom domain or take iOS through TestFlight and App Store review.
Where to go next
- Quick start if you have not run the loop yet.
- The stack for what apps are built with, from framework to production.
- Spaces for a tour of the workspace.