Cirro App Kit¶
Documentation, a project template and tools for building browser apps on the Cirro platform: apps that sign users in with their Cirro account over OAuth and work with their projects, datasets and files.
The template and tools live in the CirroBio/Cirro-app-kit repository; getting started shows how to clone it.
Quick start¶
New to Cirro? Read Cirro in five minutes, then follow getting started, which takes you from no account to a running app.
- Register the app's callback URL. Each app has its own callback URL, the address it returns to after sign-in, and gets its client ID from the tenant by it. In production a tenant admin registers it with discovery enabled (support@cirro.bio for the public tenant), so no client ID is configured or deployed. For local development, an App Developer can register a
localhostcallback URL themselves and put that registration's client ID in.env. - Run the app template.
templates/appis a React starter for portals, dashboards and workflow tools. Set the tenant's address (and, for local development, your registration's client ID) in.env, thennpm install && npm run dev. - Decide what to build. Cirro gives an app storage, pipelines, workspaces, sharing and a database, not just an API; see building on Cirro. List the permissions you use in
cirro-permissions.json(permissions). - Before deploying, run
python3 tools/scan.py <your app>and work through the security checklist. - Connect to tenants. A deployed app works for users once each tenant approves it; see connecting to tenants.
Verified against¶
@cirrobio/api-client and @cirrobio/sdk 0.13.39, with oidc-client-ts 3.5.0 for sign-in, React 19, Vite 8 and TypeScript 7. The app template was clean-installed and built on 2026-10-19. CI rebuilds it on every push and weekly against the latest published packages.
Contributing¶
See contributing, including how to update the kit when the Cirro packages publish a new version.
Using with Claude¶
The kit is also a Claude Code plugin, and its repository is a marketplace that lists it. Its skills hold the workflow steps for an agent (which questions to ask, which path to choose, when to verify against installed versions) and read their facts from this guide, so the guide stays the single source of truth. Install it in Claude Code (you need access to the CirroBio/Cirro-app-kit repository):
/plugin marketplace add CirroBio/Cirro-app-kit
/plugin install cirro-app-kit@cirro-app-kit
Then describe what you want to build ("start a Cirro dashboard that lists my datasets"); the matching skill loads by itself, or call one by name, such as /cirro-app-kit:cirro-app-scaffold. To work on the skills, see contributing.
| Skill | Use it to |
|---|---|
cirro-app-scaffold |
Start a new app |
cirro-auth-wiring |
Add or debug Cirro sign-in |
cirro-data-access |
Call the API and read or upload files |
cirro-permissions |
Write the permission manifest and handle 403s |
cirro-sheets |
Use Sheets as the app's database |
cirro-compute |
Run pipelines and launch workspaces from the app |
cirro-app-review |
Review an app before deploying |
cirro-app-deploy |
Deploy, and connect the app to tenants |