Skip to main content
zerotal

Zerotal Documentation

Zerotal is a Bun-native, full-stack TypeScript framework. You write plain classes, drop them in convention-named folders, and the framework wires them together at boot — no build step, no manual registration.

New here?

Three pages, in order, and you'll be productive:

  1. Getting Started — scaffold a project, run it, add a route, a model, and a service provider. Fifteen minutes.
  2. About Zerotal — the whole framework on one screen: the four ideas it rests on, and a runnable example of every major feature.
  3. Conventions — what gets auto-discovered, and the naming rules that make it happen. This is the page that stops the surprises.
# in your project's parent directory
bun create zerotal my-app
cd my-app && bun dev

Find your way around

If you want to…Read
Handle a requestRouting · Controllers · Middleware · Requests Context
Talk to a databaseDatabase · ORM · Migrations · Query Builder
Build a UIViews · Flow · Inertia · Assets
Sign users inAuthentication · Authorization · Roles & 2FA · Social Login
Do work in the backgroundQueue · Scheduler · Broadcasting
Understand how the framework bootsThe Application · Lifecycle · Container · Providers
Test what you builtTesting · HTTP Tests · Database Tests
See what's running in productionLogger · Monitor · Telemetry · Health
Debug what it just didDevTools · Errors
Work with a coding agentAgent Surface
Ship itDeployment · Commands

Choosing a frontend

Zerotal doesn't pick for you, and the choice is per project rather than per framework:

  • Views — server-rendered JSX. No client runtime at all. Right for content sites, forms, and anything that doesn't need live updates.
  • Flow — reactive components rendered on the server, updated over a WebSocket. You write TypeScript classes, not client state. Right when you want interactivity without a separate frontend codebase.
  • Inertia — a React or Vue SPA that talks to your controllers directly, with no API layer to maintain. Right when you already know React or Vue and want the full client-side experience.

Reference