Supabase est une alternative open source à Firebase. Nous développons les fonctionnalités de Firebase en utilisant des outils open source de qualité professionnelle.
- Base de données Postgres hébergée
- Abonnements en temps réel
- Authentification et autorisation
- API générées automatiquement
- Tableau de bord
- Stockage
- Fonctions
Pour une documentation complète, visitez supabase.com/docs
Pour voir comment Contribuer, visitez Getting Started
- Forum communautaire. Idéal pour : aide à la construction, discussion sur les meilleures pratiques en matière de bases de données.
- GitHub Issues. Idéal pour : les bugs et les erreurs que vous rencontrez en utilisant Supabase.
- Support par e-mail. Idéal pour : les problèmes avec votre base de données ou votre infrastructure.
- Discord. Idéal pour: partager vos applications et échanger avec la communauté.
- Alpha : Nous testons Supabase avec un groupe fermé de clients.
- Alpha publique : Tout le monde peut s'inscrire sur app.supabase.com. Mais allez-y doucement, il y a quelques problèmes.
- Bêta publique : Assez stable pour la plupart des cas d'utilisation hors entreprise
- Public : Prêt pour la production
Nous sommes actuellement en version bêta publique. Surveillez les "releases" de ce repo pour être informé des mises à jour majeures.
Supabase est une combinaison d'outils open source. Nous développons les fonctionnalités de Firebase en utilisant des produits open source de qualité professionnelle. Si les outils et les communautés existent, avec une licence ouverte MIT, Apache 2 ou équivalente, nous utiliserons et soutiendrons cet outil. Si l'outil n'existe pas, nous le construisons et l'exploitons nous-mêmes. Supabase n'est pas une correspondance 1 à 1 de Firebase. Notre objectif est de donner aux développeurs une expérience similaire à celle de Firebase en utilisant des outils open source.
Architecture actuelle
Supabase est une plateforme hébergée. Vous pouvez vous inscrire et commencer à utiliser Supabase sans rien installer. Vous pouvez aussi auto-héberger et développer localement.
- PostgreSQL est un système de base de données relationnel-objet dont le développement actif depuis plus de 30 ans lui a valu une solide réputation de fiabilité, de robustesse des fonctionnalités et de performance.
- Realtime est un serveur Elixir qui vous permet d'écouter les insertions, mises à jour et suppressions PostgreSQL à l'aide de websockets. Supabase écoute la fonctionnalité de réplication intégrée de Postgres, convertit le flux d'octets de réplication en JSON, puis diffuse le JSON sur des websockets.
- PostgREST est un serveur web qui transforme votre base de données PostgreSQL en une API RESTful.
- Storage fournit une interface RESTful pour gérer les fichiers stockés dans S3, en utilisant Postgres pour gérer les permissions.
- postgres-meta est une API RESTful pour la gestion de votre Postgres, qui vous permet d'extraire des tables, d'ajouter des rôles, d'exécuter des requêtes, etc.
- GoTrue est une API basée sur SWT pour gérer les utilisateurs et émettre des jetons SWT.
- Kong est une passerelle API native cloud.
Notre bibliothèque client est modulaire. Chaque sous-bibliothèque est une implémentation autonome pour un seul système externe. C'est l'une des façons dont nous soutenons les outils existants.
Language | Client | Feature-Clients (bundled in Supabase client) | |||
---|---|---|---|---|---|
Supabase | PostgREST | GoTrue | Realtime | Storage | |
⚡️ Officiel ⚡️ | |||||
JavaScript (TypeScript) | supabase-js | postgrest-js | gotrue-js | realtime-js | storage-js |
💚 Communauté 💚 | |||||
C# | supabase-csharp | postgrest-csharp | gotrue-csharp | realtime-csharp | - |
Flutter | supabase-dart | postgrest-dart | gotrue-lang | realtime-dart | storage-dart |
Go | - | postgrest-go | - | - | - |
Java | - | - | gotrue-java | - | - |
Kotlin | - | postgrest-kt | gotrue-kt | - | - |
Python | supabase-py | postgrest-py | gotrue-py | realtime-py | - |
Ruby | supabase-rb | postgrest-rb | - | - | - |
Rust | - | postgrest-rs | - | - | - |
Swift | supabase-swift | postgrest-swift | gotrue-swift | realtime-swift | storage-swift |