Pages and API in one TypeScript app.That is Pubflow Native.
What it is
Not a new runtime. A folder convention so you — or an AI — ship a live URL in minutes.
app/pages and app/api
UI lives in pages. Queries and DATABASE_URL live in api or actions. The browser only sees public env vars.
Same fetch everywhere
The Hono fetch runs on Node, Bun, Docker, a VPS, or Cloudflare Workers. Workers is one host, not the product.
Flowless is optional
Native asks Flowless if the session is valid, then requireAuth / requireRole gate routes. Skip Flowless and it is still React + Hono. Anyone can use it — it is not locked to Pubflow.
Start from the starter
Clone only starter/, not the whole docs repo.
npx degit pubflow/native/starter my-app && bun install && bun run dev
Or: npx pubflow create native my-app
When to pick Native
Native is the “many ideas, little time” TypeScript path. It is not a replacement for Next on a large product team. Native is web — Expo stays a separate starter.
Pubflow Native
One TypeScript app. UI and API together.
Next.js or TanStack Start
A React frontend talking to any Flowfull backend.
Python, Go, Elixir, Rust
A Flowfull API in that language, plus a client. See the Library.
Native is the complete TypeScript path
Frontend and backend in one app is not a lesser stack. It is usually the fastest way to ship a real product.
UI and API in one place
Pages and server code live in the same app, so you (or an AI) change one project instead of wiring two.
Less glue, faster to keep
One deploy, one TypeScript toolchain. That is why Native is efficient, robust, and easier to maintain for most new products.
Not less than Next or Python
Split stacks exist when you already love Next, or you need another language. Native still covers auth, data, and pages — it is the packed TypeScript option.
What it is not
Native is web. Phone apps use the Expo starter. It is not a drop-in replacement for Next on a large product team.
Pubflow's partners include OVHcloud, Cloudflare, and Turso — infra and Cloud Database around the app, without locking you to their startup programs.
Ship the first page today.
Use Native with Flowless as the trust layer, or run it on its own.