PocketBase в проекте
без своего сервера
База, вход пользователей, файлы и realtime на поддомене с SSL. Установка кнопкой в панели. Бесплатно в любом тарифе Hostim, включая Hobby.
import PocketBase from "pocketbase";
const pb = new PocketBase(
"https://myapp-pocketbase.apps.hostim.app",
);
await pb.collection("users")
.authWithPassword(email, password);
const tasks = await pb.collection("tasks")
.getList(1, 20, { filter: "done = false" });
pb.collection("tasks")
.subscribe("*", (e) => render(e.record));Подойдёт и не подойдёт
- Нужен бэкенд для SPA, мобильного приложения или мини-приложения Telegram, а писать свой API нет времени
- Прототип или MVP, который нужно показать через несколько дней
- Внутренний инструмент: заявки, учёт, справочники с готовой админкой
- Проект на тарифе Hobby (2 GB памяти), куда Supabase не помещается
- Нужны Postgres, сложные SQL-запросы и аналитика. Подойдёт Supabase или managed Postgres
- Ожидается интенсивная запись из многих потоков: SQLite записывает данные по одной транзакции за раз
- Обновления без риска несовместимости обязательны: PocketBase пока не вышел в версию 1.0
Что входит
Коллекции с полями, связями и правилами доступа. Веб-админка по адресу /_/ для данных и настроек.
Email и пароль, одноразовые коды на почту, двухфакторный вход. OAuth2: Google, Apple, GitHub, Яндекс и другие.
Загрузка файлов в записи, миниатюры картинок. Хранение на диске проекта или во внешнем S3.
Подписка на изменения коллекций прямо из браузера. Отдельный сервер событий не нужен.
Хуки на JavaScript: проверки данных, вебхуки, письма, задачи по расписанию.
Данные на постоянном диске, ежедневная копия в S3, логи, перезапуск, алерты в Telegram. Обновление версии кнопкой, с копией данных перед ним.
Бесплатно
Без доплаты за PocketBase, пользователей, запросы и трафик. PocketBase работает в ресурсах проекта рядом с приложением, оплачивается только сам проект.
- Hobby · 590 ₽/мес · 1 vCPU, 2 GB RAM
- Pro · 1 490 ₽/мес · 4 vCPU, 8 GB RAM
- High · 3 490 ₽/мес · 12 vCPU, 24 GB RAM
Что важно знать заранее
- !Один экземпляр, база SQLite: рост только за счёт ресурсов тарифа.
- !Письма с кодами, подтверждением и сбросом пароля уходят через собственный SMTP из настроек PocketBase.
- !Обновление до новой версии только после подтверждения: до версии 1.0 возможны несовместимые изменения.
- !При приостановке проекта из-за нулевого баланса PocketBase недоступен и для пользователей приложения.
- !На старте адрес на поддомене Hostim. Свой домен появится следующим шагом.
Частые вопросы
Чем PocketBase отличается от Supabase?
PocketBase это один процесс и база SQLite: просто, мало памяти, работает на любом тарифе. Supabase построен на Postgres, даёт SQL, расширения и больше сервисов, но требует тариф Pro.
PocketBase доступен снаружи проекта?
Да. API, вход пользователей, файлы, realtime и админка работают по HTTPS из любого места: из браузера, мобильного приложения, с сервера на другом хостинге.
Можно перенести существующий PocketBase?
Да. Каталог pb_data с базой и файлами переносится в проект целиком. При подключении перенос проходит вместе с поддержкой.
Сколько нагрузки выдержит?
Чтение в SQLite быстрое, ограничение в записи: одна транзакция за раз. Для MVP, внутренних инструментов и большинства мобильных приложений этого достаточно.
Какая версия PocketBase?
Актуальная стабильная на момент установки. Новые версии ставятся по кнопке, с копией данных перед обновлением.
Когда откроется доступ?
По мере готовности, в первую очередь по заявкам с этой страницы. Письмо придёт на указанный email.
Ранний доступ к PocketBase
Оставьте email. Доступ открывается сначала по заявкам.