Использование служб Supabase во Flutter

Мы кратко рассмотрим:

  1. Войдите в систему, используя Magic Link
  2. CRUD-операции с использованием Postgres
  3. Загрузка изображений с помощью хранилища

Введение в Супабазу

Прежде чем погрузиться в Supabase, давайте познакомимся с тем, что такое Supabase.

Supabase — это альтернатива Firebase с открытым исходным кодом, которая предоставляет набор серверных сервисов, включая аутентификацию, базу данных и хранилище.

Supabase предлагает некоторые функции, такие как

  • Служба аутентификации: для аутентификации пользователя.
  • Служба базы данных: стандартный PostgreSQL.
  • Сервис в реальном времени: отправка сообщений и состояний клиентам.
  • Edge-функции: запуск функций TypeScript на стороне сервера, глобально распределенных на периферии.
  • Служба хранения: Хранение и обслуживание файлов.

Чтобы интегрировать Supabase в приложение Flutter, мы будем использовать пакет supabase_flutter. Инициализацию клиента Supabase можно выполнить с помощью следующего фрагмента кода.

void main() async {
  await Supabase.initialize(
    url: SUPABASE_URL,
    anonKey: SUPABASE_ANON_KEY,
  );
}

final supabase = Supabase.instance.client;

Войдите в систему, используя Magic Link

Он позволяет пользователям входить в ваше приложение с помощью Supabase Auth с помощью магической ссылки.

  • Чтобы нативное приложение открывалось при нажатии пользователем ссылки, необходимо настроить глубокие ссылки. При использовании аутентификации Supabase в некоторых сценариях приложение открывается при нажатии ссылки. Для эффективной поддержки этих сценариев необходима настройка глубоких ссылок.