PocketBase: один бинарник, который заменит Firebase

PocketBase — backend в одном файле: база данных, аутентификация, файловое хранилище и админка. Что умеет, а чего не хватает.

Иногда хочется бэкенд, который не требует 15 микросервисов, Kubernetes и команды из пяти человек. PocketBase — это именно такой случай: скачал один бинарник, запустил — и у вас готовая база данных, REST API, админ-панель и аутентификация.

Что внутри

PocketBase построен поверх SQLite и написан на Go. Это принципиально: никаких внешних зависимостей, никакого PostgreSQL. Бинарник на 20 мегабайт содержит в себе весь backend.

  • База данных — SQLite с миграциями из коробки
  • Аутентификация — email/пароль, OAuth2 (Google, GitHub, Apple и другие), сброс пароля
  • Файловое хранилище — загрузка файлов, ресайз изображений, защита через токены
  • Админ-панель — управление коллекциями, пользователями, просмотр логов
  • Realtime — подписки на изменения данных через Server-Side Events

API генерируется автоматически на основе схемы коллекций. Создали коллекцию «posts» в админке — сразу появились CRUD-эндпоинты.

Расширяемость

PocketBase можно расширять на Go: кастомные роуты, хуки, middleware, веб-сокеты. Это превращает его из простого backend-as-a-service в полноценный фреймворк для API. Для JavaScript/TypeScript-разработчиков есть SDK.

Ограничения

SQLite — не для high-write сценариев. Если у вас тысячи конкурентных записей в секунду — смотрите в сторону PostgreSQL. Горизонтальное масштабирование отсутствует: PocketBase — это один сервер. Но для 95% проектов этого более чем достаточно.

Для каких проектов подходит

MVP и прототипы, внутренние инструменты, админки, mobile-бэкенды, SaaS на ранней стадии. Всё, где нужно быстро получить работающий API без лишней инфраструктуры.

Официальный сайт PocketBase