supabase/supabase
Supabase
This project provides an integrated backend platform built around a relational database. It automatically generates REST and GraphQL APIs from database schemas, allowing for direct data interaction through standard requests and client libraries. The platform includes a comprehensive authentication system that manages user identity, session handling, and fine-grained access control through database-native row-level security policies.
Beyond core data management, the platform offers specialized services for object storage, vector data processing for semantic search, and real-time communication features like broadcast messaging and database change subscriptions. It also supports server-side logic execution through globally distributed edge functions, database-resident functions, and a native job scheduler for automated tasks.
Developers can manage the entire project lifecycle using a command-line interface and containerized local development environments. The platform supports both managed cloud services and self-hosted deployments, providing options for infrastructure control and data sovereignty.
Features
- GraphQL API Generators - An automatically generated GraphQL API layer derived from a relational database schema, supporting standard data queries, mutations, and complex relationship handling.
- Change Data Capture Streams - Real-time monitoring of database events like inserts, updates, and deletes using logical replication to capture and stream specific data changes.
- Authentication Services - A comprehensive authentication system supporting social logins, email, password, phone, magic links, and enterprise SSO with token-based session management and multi-factor authentication.
- Object Storage - A managed object storage service providing S3-compatible APIs, global content delivery, image transformations, and database-integrated access control for secure file management.
- Edge Function Runtimes - A globally distributed serverless execution environment supporting common programming languages and automatic scaling for low-latency, event-driven backend logic.
- Vector Database Extensions - A relational database vector extension supporting indexing, distance metrics, and metadata filtering for efficient similarity search and high-dimensional data retrieval.
- Command Line Interfaces - A terminal-based tool for managing project lifecycles, including local environment orchestration, schema migrations, type generation, and cloud deployment workflows.
- Database GUIs - A web-based database management interface featuring spreadsheet-style data views, relational exploration, table cloning, and an integrated SQL editor for direct data manipulation.
- Database Job Schedulers - A database-native job scheduler supporting cron expressions, sub-minute intervals, and multi-target execution including SQL, database functions, and HTTP webhooks.