К содержанию

Wiki · Технологии разработки

Supabase

Supabase – это платформа «бэкенд как сервис» на базе PostgreSQL: вместе с проектом вы сразу получаете базу данных, авторизацию пользователей, хранилище файлов и готовый API для фронтенда и мобильного приложения. Код платформы открыт, её можно использовать в облаке Supabase или развернуть на своём сервере.

Обычный путь мобильного приложения выглядит так: дизайн, клиентская часть и отдельный сервер с базой, регистрацией, загрузкой фото и API. Серверная часть легко съедает треть бюджета, ещё до того как стало понятно, нужен ли продукт рынку. Supabase закрывает типовую часть этого сервера готовыми модулями, и команда пишет только то, что отличает продукт.

Что входит в Supabase

МодульЧто делаетПример в приложении
Databaseполноценная база PostgreSQL для каждого проектазаказы, каталог, профили
Authвход по почте и паролю, без пароля, через OAuth-провайдероврегистрация в приложении
Storageхранение и выдача файлов с правами доступааватары, фото товаров, документы
Realtimeизменения в базе сразу приходят клиентамчат, статус заказа без обновления
Edge Functionsсерверный код, который выполняется близко к пользователюотправка уведомления после оплаты

Отдельно писать API не нужно: по таблицам базы автоматически строится REST API, есть и GraphQL. Клиентские библиотеки есть для JavaScript, Flutter, Swift и других платформ. Подключение в приложении выглядит примерно так:

import { createClient } from '@supabase/supabase-js'
const supabase = createClient(SUPABASE_URL, SUPABASE_KEY)
const { data } = await supabase.from('orders').select('*')
Схема модулей Supabase: база PostgreSQL с API и Realtime, авторизация с политиками RLS, хранилище файлов и серверные функции
Что приложение получает от Supabase

Почему без политик RLS данные открыты всем

Раз приложение обращается к базе напрямую через API, защита живёт в самой базе. В PostgreSQL для этого есть политики на уровне строк (Row Level Security): правило вроде «пользователь видит только свои заказы». Документация Supabase предупреждает, что таблица в открытой схеме без RLS доступна на чтение и запись любой роли, у которой есть на неё права. Если включить RLS и забыть политики, приложение не увидит данных совсем.

Это главное, что стоит проверить у подрядчика перед запуском: RLS включён на каждой таблице, а секретный служебный ключ не попал в код мобильного приложения или сайта.

Облако или своя установка

У облачной версии нет региона в России: по документации на октябрь 2026 года проекты размещаются в регионах AWS в Северной и Южной Америке, Европе, Азии и Австралии. Для приложения, которое собирает персональные данные россиян, это вопрос к закону: 152-ФЗ требует хранить такие данные в базах на территории России, подробнее в статье 152-ФЗ и персональные данные на сайте. Условия доступа к облаку и оплаты из России уточняйте у Supabase.

Вторая дорога – своя установка. Документация рекомендует разворачивать Supabase через Docker Compose на собственном сервере. Но есть отличия: такая версия обслуживает один проект, нет ветвления, управляемых резервных копий и восстановления на момент времени, а поддержка идёт через сообщество. Безопасность, обновления, бэкапы и мониторинг становятся задачей вашей команды.

Сравнение облачного Supabase и собственной установки через Docker Compose: где хранятся данные и кто отвечает за бэкапы и сервер
Облако Supabase или своя установка

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

  • MVP и прототипы, где нужно быстро проверить идею с реальными пользователями.
  • Мобильные приложения на Flutter или React Native, которым нужны регистрация, профиль, файлы и данные в реальном времени.
  • Внутренние сервисы и админки поверх данных в PostgreSQL.
  • Сложная бизнес-логика с интеграциями в 1С и учётные системы: её всё равно выносят на отдельный бэкенд, например на FastAPI или Laravel.
  • Обычный сайт компании или интернет-магазин: для них есть готовые CMS.

Хорошая новость для заказчика в том, что внутри обычный PostgreSQL. Если продукт вырос, базу можно выгрузить и перенести на свой сервер или в другое облако, а прикладную логику постепенно переписать на собственный бэкенд.

Supabase против Firebase, подключение и переезд

Чем Supabase отличается от Firebase?

Supabase построен на реляционной базе PostgreSQL с SQL и открытым кодом, его можно развернуть у себя. Firebase от Google хранит данные в документной базе и работает только в облаке Google. Для данных со связями вроде заказов, товаров и клиентов удобнее Supabase.

Как подключить Supabase к мобильному приложению?

Создают проект, берут его адрес и публичный ключ и подключают клиентскую библиотеку Supabase для Flutter, Swift, Kotlin или JavaScript. До выпуска приложения включают RLS и пишут политики доступа к таблицам.

Какие есть аналоги Supabase?

Ближайшие аналоги Supabase среди бэкендов как сервиса: Firebase от Google, Appwrite и PocketBase. В российских облаках похожий набор собирают из управляемой PostgreSQL, объектного хранилища и серверных функций, но готовой авторизации и API из коробки там меньше, их дописывают.

Что делать, если проект перерос Supabase?

Выгрузить базу PostgreSQL обычными средствами и перенести на свой сервер, а логику из функций переписать на собственный бэкенд. Данные при этом не теряются.

Бэкенд для приложения подбираем под задачу и требования к данным при разработке мобильного приложения. Если проект уже работает на Supabase, берём его на доработку и поддержку.

Документация платформы и закон о персональных данных

См. также: Keycloak, SQL.

Остались вопросы по теме «Supabase»?

Напишите нам в Telegram или MAX. Ответит специалист, который отвечает за эту тему, или руководитель проектов в рабочее время.

Сергей ЧерняковОтвечает по темеСергей ЧерняковWeb-разработчик

Посчитайте стоимость проекта за 2 минуты

Калькулятор соберёт смету по нашим тарифам: сайт, дизайн, интеграции и поддержка.