Skip to content

Open source

Open source, and yours to run

The framework is Apache-2.0 and published on npm as seven packages. Build your app into one folder and run it where you like: with the protobase command, a single runtime file or a Docker image.

Start in the cloud

Early accessSign up with GitHub or email. Your first app is live in a few minutes. Plans from €0.99 a month.

Or self-host it for free

Start

Start from the database you already have

The CLI reads your database in a read-only session and writes the description for you. Nothing in your database changes.

Terminal
# Install the CLI and the packages your config imports
npm install @protobase/cli @protobase/schema \
  @protobase/layout @protobase/server @protobase/ui

# Describe your tables, read in a read-only session
npx protobase scaffold postgres://you@localhost:5432/shop --ui

# Check every resource against the database
npx protobase doctor postgres://you@localhost:5432/shop

Packages

Seven packages under @protobase

Protobase’s packages are only the scoped ones. The unscoped protobase package on npm belongs to another project.

@protobase/schema
Resource, field, view and access definitions for Protobase configs.
@protobase/layout
Composed pages, written as JSX that compiles to plain data, with its JSX runtime.
@protobase/query
Kysely list, filter, count and aggregate queries over Protobase resources.
@protobase/server
The Protobase REST API as a Hono app, with Better Auth sign-in.
@protobase/client
Typed fetch client for the Protobase REST API.
@protobase/ui
The Protobase admin app and the React hooks and components for custom UI.
@protobase/cli
The protobase command: scaffold, doctor, dev, build and serve a Protobase project.

Build

Build once, into one folder

  • protobase build writes one folder: the config module, the admin app with your UI as plugins and your theme, and a manifest.
  • The build needs no secrets and no database, so it can run anywhere your code does.
  • Native add-ons come along with Linux binaries for x64 and arm64.
  • Your web host serves the admin app itself and sends only /api to the runtime, so loading the UI never needs a running container.

Run

Three ways to run it

  • protobase serve

    Serves a bundle’s API, on port 8787 by default. protobase worker runs jobs on their own.

  • One runtime file

    protobase-serve.js, about 3 MB. A host needs Bun and this file, nothing else.

  • The Docker image

    ghcr.io/prototeamhq/protobase for amd64 and arm64. It runs as a non-root user and writes nothing, so the root filesystem can be read-only, with a health check at /health.

Operations

Your migrations, your users

Start from a preset if you like: the ERP, the real estate app or an empty project. They are written from a clone of the repository, and the protobase-dev image ships them with their dependencies, ready to work offline.

  • protobase migration writes the SQL for sign-in, jobs, events and webhooks as your own migration files, and your project applies them with its own migrate command.
  • The runtime refuses to start while the database schema is behind.
  • There is no setup page on the web. Create the first admin with protobase users create [email protected] --generate-password.
  • List users, change roles, disable or delete them, manage organizations, and print a token for any user, all from the command line.

Releases

How it is made

  • Every fix and feature pushed to the main branch is released automatically, from Conventional Commits.
  • Each release passes type checks, unit, PGlite, integration and end-to-end tests, a Node smoke test, a docs build with link checks, Storybook play tests and a browser check of every docs page.
  • Packages ship to npm with provenance, all seven at one version; images ship to GitHub’s container registry for amd64 and arm64.
  • Before 1.0 a minor version may change the config format, and the plugin API stays stable.

Built with

  • TypeScript
  • Node 22.12+ or Bun
  • Hono
  • Kysely
  • Better Auth
  • Zod
  • pg-boss
  • React Email
  • React 19
  • Tailwind CSS 4
  • TanStack Query and Table
  • MapLibre GL
  • Vite

Your back office, live in a few minutes

Sign up with GitHub or email, pick a starting point, and ask the assistant for what you need.

Start in the cloud

Early access Plans from €0.99 a month.