Define schema, policies, server functions, and typed clients in one TypeScript model. Pylon wires in live sync, auth, storage, jobs, and one-binary deploy over SQLite or Postgres, so you can build the product instead of its plumbing.
db.useQuery("Order")livePylon keeps rules, commands, generated types, local data, and logs inside the workflow. Your agent can scaffold, run, debug, and deploy without guessing which console owns the next step.
New apps include AGENTS.md, and the Pylon skill installs with npx skills add pylonsync/pylon. The agent reads the conventions before it edits code.
npm create @pylonsync/pylon scaffolds the app. pylon dev runs it locally. pylon deploy ships it to Cloud.
pylon codegen builds the client from your schema and functions. Bad entity names, missing fields, and wrong arguments fail at compile time.
The agent can inspect tables, live queries, and logs in /studio while pylon dev runs. Debugging happens against current data.
Declare an entity and its access policy. Pylon creates the table, REST and realtime API, row-level checks, and typed React client. That keeps resolvers, an ORM layer, and a separate backend service out of your stack.
// one entity → a synced table + typed clientconst Order = entity("Order", { customer: field.string(), total: field.float(), paid: field.boolean().default(false),}); // access rules next to the schema — deny by defaultpolicy({ entity: "Order", allowRead: "auth.userId != null", allowInsert: "auth.userId == data.ownerId",}); // the React side — live, typed, no fetchconst { data } = db.useQuery("Order");Schema, sync, auth, functions, storage, search, jobs, rooms, and SSR share one schema and one runtime. Pick the pieces your app needs and ship them as one binary.
Define entities, fields, and indexes in TypeScript. Pylon turns them into tables and applies migrations on save.
entity("Order", { total: field.float() })db.useQuery opens a WebSocket subscription. Every write pushes a diff to subscribed clients, without polling or cache invalidation.
const { data } = db.useQuery("Order")Write query() for joins and derived data. The server tracks what it read and re-runs when those dependencies change.
Put queries, mutations, and actions in TypeScript files with v.* validators. React calls them through the typed client.
Access rules live next to the schema as expressions like auth.userId == data.authorId. Every read and write is checked; default deny.
allowRead: "auth.userId != null"Magic-link email, 25+ OAuth providers, generic OIDC discovery, guest sessions, and API keys are built in.
Start with SQLite in one file. Set DATABASE_URL=postgres://... and the same schema targets Postgres.
Browse tables, inspect live queries, tail logs, and run ad-hoc mutations at /studio. Admin-gated in prod.
Use presigned uploads. Store files on local disk or an S3-compatible bucket such as R2, Backblaze, or MinIO.
Add search to an entity for full-text queries, live facet counts, and sort. Search updates in the same transaction as your writes.
Schedule follow-up work with ctx.scheduler.runAfter, runAt, and cancel. Delays and retries run in the same process.
WebSocket rooms carry live presence and ephemeral state such as cursors, typing, and who's online over the same server.
Install the Pylon Cloud GitHub App once. Pushes to the default branch deploy; pull requests get previews that disappear after merge.
git push origin main triggers a deploy.your-app.pyln.dev.pylon deployUse the CLI for CI, locked-down environments, or a manual release. It reaches the same Cloud runtime as the GitHub flow.
Every app sits behind a global edge network. Resize machines, add replicas and regions, or expand storage from the same dashboard, without pre-provisioning or per-seat pricing.

Cloudflare's edge provides CDN caching, TLS, and DDoS protection worldwide with no extra configuration.
Add RAM up to 64 GB, choose performance CPUs, and expand the volume without redeploying.
Run up to 32 load-balanced replicas per region on Pro.
Deploy in US, EU, APAC, and South America regions.
Grow storage live when the app needs room.
Bundled SQLite by default; co-located managed Postgres is in private beta.
Free tier sleeps when idle. Paid projects stay warm.
Bring your domain; Pylon handles TLS.
Configure org-level SSO from the dashboard.
Activity log, one-click volume restore.
You don’t hand your whole stack to a framework on faith. These are the four questions we’d expect. Read the answers, then open the repo and judge for yourself.
You could. You've built each piece before: the schema and migrations, row-level access checks, session handling, REST endpoints, the socket that pushes live updates, and the generated client. Keeping them in agreement gets hard as soon as the schema moves. Pylon generates the set from one entity and its policy, then regenerates it together on every change. That gives you back the afternoon you'd otherwise spend syncing it by hand.
Your code imports Pylon's SDK. That's the trade: one typed model in place of six services you wire together yourself. The runtime is a single open-source binary you can host on ordinary SQLite or Postgres. Take a plain database dump or run the platform on your own box without a Pylon account.
It means the rules, commands, generated types, local data, and logs live in one workflow. An agent can scaffold an app, run a migration, read a failure, and redeploy without hopping between four consoles. Run npm create @pylonsync/pylon and watch an agent take it from an empty folder to a running app.
The runtime is Rust on Postgres, so you scale by turning on Postgres mode, adding replicas, and using the edge network that already fronts every app. Your application code stays the same.
Start with one free project. Pro is $25 per org per month; heavier compute, replicas, and storage bill as usage.
One project for weekend builds and your first users.
Production apps with room to grow. Resize machines, add replicas, expand regions.
Bespoke quotas, single-tenant, BYOC. For larger teams.
Pro is $25/org/month. Bigger machines, more replicas, and larger volumes are billed at the underlying compute rate for what you run. Or self-host the open-source framework anywhere as one Pylon binary.
Hobby requires no card. Connect GitHub or deploy from the CLI when you are ready.