← All open source projects

PocketBase

pocketbase/pocketbase

PocketBase is a compact Go backend with SQLite, users, files, APIs, and realtime subscriptions.

Forks 3,479
Author pocketbase
Language Go
License MIT
Synced 2026-06-27

What it is

PocketBase is a compact backend in one executable file. It includes SQLite, user management, file storage, an admin dashboard, REST-like APIs, and realtime subscriptions.

It helps when a team needs a backend for a prototype, internal tool, small product, or standalone app without deploying a large service stack.

How the approach works

PocketBase can run as a standalone app or be used as a Go framework. In the first mode, developers get an admin UI and APIs quickly; in the second, they can extend behavior with code.

SQLite keeps operations simple: one database file, clear backups, and a low starting cost. That still requires proper data modeling, access rules, and migrations.

Local start

This example shows the quick path: one binary starts the server, then collections and rules can be configured in the admin UI.

Language: Bash
./pocketbase serve

# open http://127.0.0.1:8090/_/
# create collections, users and API rules

What is inside

The repository contains PocketBase Go code, a `main.go` example, tests, documentation for app and library modes, security notes, and contribution material.

Its special quality is combining simplicity and extension: database, auth, files, API, and admin UI arrive together.

Practical context

PocketBase is strongest for prototypes that need real collections, users, and files today. Before the product grows, access rules and data migrations deserve separate review.

Strengths and limits

The main strength is startup speed. A small project can get a backend foundation in minutes.

The limit is product scale and requirements. Complex multi-service systems, heavy analytics, or special database needs may require a more traditional stack.