On this page
Small apps that run on your device.
A no-code app is a tiny, local-first flow: capture a few things, do some simple steps on your own device, and only reach out to an AI tool when you ask it to. Pick a starter from the searchable gallery below to see its flowchart, then copy or download it and run it from the CLI. Your data stays on your device.
Educational and informational only — not legal or clinical advice. App definitions are safe to share (they hold no family data); the values you fill in can be private, so they stay on your device.
These starters are the same @cotrackpro/sdk/nocode definitions the CLI runs — what you preview here
behaves identically in your terminal.
In short: these little apps are like recipes you follow on your own computer. You type a few answers, the app does its simple steps, and you get something useful at the end. Nothing you type is sent anywhere unless you ask.
Developer note: an app is a declarative NoCodeApp JSON document (@cotrackpro/sdk/nocode); the visual builder and cotrackpro nocode run execute the identical schema, so builder exports round-trip losslessly.
Want to build one from scratch? The visual builder lets you drag in steps, connect them, run it on
your device, and export the .ctp.json — no install. Or start from a starter below and edit it.
Looking for ideas? Browse the platform's workflows and worked scenarios in the Library.
Which builder do I want?#
CoTrackPro has two authoring surfaces, and first-time builders often meet both at once:
- The app builder (this page) makes a small flow — steps connected top to bottom: ask a few
questions, do something with the answers, show a result. Choose it when there's a process:
"collect these three things, then compose a neutral summary." It exports a
.ctp.jsonthe CLI runs identically. - A form (artifact) schema describes a document to fill in — a fixed set of fields like the library's incident log or evidence log, defined as JSON Schema with a data-sensitivity tier. Choose it when the outcome is a record, not a process, and especially when it should join the platform catalog (that path goes through a contribution proposal).
Rule of thumb: steps and decisions → app builder; a document with fields → form schema. An app can end in a form-shaped result — start with the app builder if you're unsure, and lift the fields into a form schema once they stop changing.
Build your first app in 6 steps#
- Start fresh. Open the builder and choose Blank app from the New app… menu — or Browse starters… to pick one of the ready-made apps to take apart and change.
- Add steps. From the left, tap an Input (something you answer when the app runs — pick an Answer type: plain text, a date picker, a yes/no checkbox, or a choice list), then a Transform (a small built-in step, like filling in a template), then an Output (what you see at the end).
- Connect them. Drag from the dot at the bottom of one step to the top of the next. A working app flows top to bottom.
- Test it. Open the Run tab and type a value — the preview updates by itself a moment after you stop editing, and dims with "Updating…" while it refreshes (Run again re-runs it on demand). If a step uses an AI tool, type a sample answer there so you can still test the whole flow end to end.
- Keep it. Open Share / export to download the
.ctp.jsonfile — or pick a file to import one back (it's checked before it touches your canvas, and small gaps are auto-repaired). Press Save once to keep the app in your browser; after that, changes save themselves. The Check tab tells you if anything still needs fixing. - Hand it to someone. Press Copy share link in Share / export. The link opens a fill-in page — no canvas, no setup: the person you send it to just answers the questions and sees the result, on their own device. The whole app travels inside the link; nothing is uploaded, and what they type never leaves their browser. (App definitions hold no family data — that's what makes them safe to link.)
Every starter below can be tried right in your browser — press Try it to open it as a
fill-in page (nothing leaves your device). The "From a catalog form" group is generated from the
platform's curated forms; recreate any starter locally with cotrackpro nocode new <id> or
cotrackpro nocode from-form <form>.
Loading the starter apps…
Extend it with AI#
You don't have to wire every step by hand. Open the AI prompt tab and copy the prompt it gives you. Paste that into your AI assistant — Claude and Google AI Studio both work well; any capable assistant does — and ask for the change you want: "add a step that counts the words", say. The prompt carries your app's definition and the schema rules, so the assistant replies with a new app definition. Copy it, open Share / export, paste it into the Import box, and press Load it — it's checked (and small gaps auto-repaired) before it touches your canvas. Nothing leaves your device unless you send that prompt yourself, and the synthetic-data-only rule applies to whatever you type into a third-party assistant.
Run it from the CLI#
cotrackpro nocode try incident-log # ONE command: starter + test data + a first run
cotrackpro nocode from-form <form> # a typed starter from any catalog form
cotrackpro nocode idea "track pickups" --copy # an AI prompt that returns a complete app
cotrackpro nocode seed app.ctp.json # ready-to-edit test data
cotrackpro nocode examples # list the starters
cotrackpro nocode new greeter --out greeter.ctp.json
cotrackpro nocode mermaid greeter.ctp.json # the flowchart, as Mermaid
cotrackpro nocode run greeter.ctp.json --values v.json
cotrackpro nocode run app.ctp.json --mock mock.json # test AI steps offline with sample answers
cotrackpro nocode run app.ctp.json --watch # re-run on every save — live preview, in your terminal
cotrackpro nocode apps save app.ctp.json # keep it in your own library (a folder YOU own)
cotrackpro nocode apps dir --set <your-folder> # e.g. a folder in your own repo or synced drive
cotrackpro nocode share app.ctp.json --copy # publish: the same share link, from the terminal
Steps run on your device; anything that needs an AI tool goes through an MCP node, which the CLI runs only when a host provides it. See MCP & AI for connecting an assistant, and No-code for the simpler browser tools.