PocketBase: One Binary That Replaces Firebase

PocketBase is a backend in a single file: database, authentication, file storage, and an admin panel. What it can do and what's missing.

Sometimes you want a backend that doesn’t require 15 microservices, Kubernetes, and a team of five people. PocketBase is exactly that case: download a single binary, run it — and you have a ready-to-use database, REST API, admin panel, and authentication.

What’s Inside

PocketBase is built on top of SQLite and written in Go. That is fundamental: no external dependencies, no PostgreSQL. The 20-megabyte binary contains the entire backend.

  • Database — SQLite with built-in migrations
  • Authentication — email/password, OAuth2 (Google, GitHub, Apple, and others), password reset
  • File Storage — file uploads, image resizing, token-based protection
  • Admin Panel — manage collections, users, view logs
  • Realtime — data change subscriptions via Server-Sent Events

The API is generated automatically based on the collection schema. Created a “posts” collection in the admin panel — CRUD endpoints appear immediately.

Extensibility

PocketBase can be extended in Go: custom routes, hooks, middleware, web sockets. This transforms it from a simple backend-as-a-service into a full-fledged API framework. There is an SDK for JavaScript/TypeScript developers.

Limitations

SQLite is not for high-write scenarios. If you have thousands of concurrent writes per second — look toward PostgreSQL. Horizontal scaling is absent: PocketBase is a single server. But for 95% of projects, this is more than enough.

What Projects It Suits

MVPs and prototypes, internal tools, admin panels, mobile backends, early-stage SaaS. Anything where you need to quickly get a working API without extra infrastructure.

Official PocketBase Website