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.