When to use Jadpo, and when not to
Jadpo is an experiment. Try it to see what an agent writes when a strict compiler checks its work. Don't run a business on it.
Use it for
- Experiments and prototypesThe first example needs no database or AI-provider credentials.fits
- Seeing what an agent writes when the compiler checks itEvery error says whether the next step is the agent's or a person's, and
jadpo check --jsongives the same to tools. Hand it to your agent.fits - Data-backed HTTP services with permissionsStored records in PostgreSQL, who may see them checked on every query, and sign-in required unless a route says otherwise. See signed in by default and when policy says no.fits
- Several customers on one backendEach customer's records are kept apart, and a permission applies only inside the caller's own customer. See tenancy.fits
- Requiring a person's approval for risky changesA change that loosens access, breaks existing API clients or calls a new outside host fails
jadpo checkuntil a person adds an acceptance saying why. See Get a person's sign-off.fits - Evaluating the idea itselfBuild one app step by step in Learn Jadpo, or read the 29 example projects, from a first function to an app that calls an AI model.fits
Don't use it for, today
- ProductionNobody has shown it's ready for production, or that it performs as well there as it does locally.not today
- Anything that needs raw SQL or an arbitrary HTTP callJadpo code can't use either, and a way out isn't on the roadmap.not today
- Frontends and UIA frontend can call the HTTP API Jadpo serves.out of scope
- Teams that need a mature ecosystem or a hiring poolJadpo has one maintainer and no public package registry, and nobody is hiring for it.not today
- Workloads that need proven edge performanceWorkers builds pass local tests in
workerd, Cloudflare's open-source runtime, but haven't run on Cloudflare itself. Performance is measured only locally.not measured - Apps that need Jadpo to handle personal data in fullJadpo can erase a person and delete old records, though not yet in every case, such as records holding files. It can't export a person's data yet.partly
Jadpo in one paragraph
Jadpo is an experimental language for web backends. An AI coding agent writes the code, and the compiler checks who may see what, how data is read and changed, and where secrets go, before you review it. It fits prototypes and HTTP services that store data and control who sees it. It's also a good way to see what an agent builds when a compiler catches its mistakes. It's early, so don't run production systems on it yet. Jadpo code can't use raw SQL, and it doesn't build frontends.