Об этом проекте

Supabase описывает себя как платформу разработки на Postgres, стремясь реализовать возможности Firebase с помощью корпоративных открытых инструментов. Репозиторий — это основной монорепозиторий проекта, включающий Dashboard, документацию и вспомогательные сервисы. Основные возможности, перечисленные в README: - Размещаемая база данных Postgres - Аутентификация и авторизация - Автоматически генерируемые API: REST, GraphQL и realtime-подписки - Функции: функции базы данных и Edge Functions - Файловое хранилище - Набор инструментов AI + Vector/Embeddings - Dashboard В README поясняется, что Supabase не является однозначным отображением Firebase. Цель — дать разработчикам опыт разработки, похожий на Firebase, используя открытые инструменты. Там, где существует инструмент с лицензией MIT, Apache 2 или эквивалентной открытой лицензией, Supabase использует и поддерживает его; там, где инструмента нет, Supabase создаёт его и открывает исходный код. Архитектура построена из нескольких открытых компонентов: - Postgres как объектно-реляционная база данных - Realtime: сервер на Elixir, который слушает вставки, обновления и удаления PostgreSQL через websockets - PostgREST: веб-сервер, превращающий PostgreSQL в RESTful API - GoTrue: API аутентификации на основе JWT для регистрации, входа и управления сессиями - Storage: RESTful API для управления файлами в S3, при этом Postgres обрабатывает разрешения - pg_graphql: расширение PostgreSQL, предоставляющее GraphQL API - postgres-meta: RESTful API для управления Postgres, включая получение таблиц, добавление ролей и выполнение запросов - Envoy: облачный edge- и сервисный прокси Supabase доступен как размещаемая платформа, а также может быть развёрнут самостоятельно или использоваться локально для разработки. Покрытие клиентских библиотек включает официальные библиотеки JavaScript/TypeScript, Flutter, Swift и Python, а также community-библиотеки для C#, Go, Java, Kotlin, Ruby, Rust и Godot Engine (GDScript). Каждая подбиблиотека — это отдельная реализация для одной внешней системы. Упомянутые каналы сообщества и поддержки включают форум GitHub Discussions, GitHub Issues для сообщений об ошибках, поддержку по электронной почте для проблем с инфраструктурой и Discord для обмена приложениями и взаимодействия с сообществом. Репозиторий можно отслеживать, чтобы получать уведомления о крупных обновлениях.