Supabase - Backend en tant que service

Une alternative vraiment open source à Firebase

Supabase, une suite backend riche en fonctionnalités

Si vous pensez que vous avez mal lu le titre et que j'ai fait une faute de frappe mais que vous voulez dire "Firebase", vous êtes en fait plus proche du sujet de cet article que vous ne le pensez. Supabase est un ensemble de fonctionnalités backend qui vous permet de gérer votre backend en tant que service. Son ensemble de fonctionnalités est assez similaire à celui de Firebase, un produit de Google qui s'appuie sur « Google Cloud Platform » et vous permet également d'exécuter un backend en tant que service.

L'alternative Firebase

Étant donné que Supabase et Firebase ont une si grande intersection de fonctionnalités de base, Supabase peut être considéré comme une alternative à Firebase. Les fonctionnalités fournies sont les suivantes.

  • gestion de l'authentification
  • base de données pour le stockage persistant
  • un stockage d'actifs pour les fichiers, tels que des images, des vidéos ou des documents
  • fonctions sans serveur, mais elles ne sont pas encore disponibles

Comme vous pouvez le voir, les fonctionnalités les plus importantes sont fournies par Supabase, avec des fonctions sans serveur à venir. Vous pouvez utiliser le service hébergé par Supabase et être opérationnel en quelques minutes avec le niveau gratuit. Pour une utilisation plus intensive, vous pouvez bien sûr passer à un forfait payant.

Supabase offre également la possibilité d'utiliser une configuration locale pour effectuer des tests pendant le développement via leur CLI. Cela signifie en fait qu'il est livré avec des environnements de mise en scène et de production intégrés que vous pouvez configurer : mise en scène locale, production dans le cloud. Bien sûr, c'est assez simplifié, mais je voulais souligner qu'il propose une CLI pour des tests locaux complets, ce qui est génial.

Différence entre Supabase et Firebase

Bien que partageant un ensemble commun de fonctionnalités, leurs implémentations ainsi que leur stratégie de développement diffèrent beaucoup de Firebase de Google. Tout d'abord, Supabase est entièrement développé en open source, ce qui signifie que vous pouvez contribuer à pratiquement tous les aspects du projet. Firebase n'a que ses clients et son admin-SDK disponibles en tant que solutions open source, avec la mise en œuvre réelle du service cachée.

L'approche ouverte de Supabase a pour effet secondaire que vous pouvez l'héberger vous-même, dans votre propre infrastructure. C'est un énorme avantage par rapport à Firebase, car vous avez la possibilité de créer et de développer votre service personnalisé si nécessaire. Il s'agit d'un aspect important lorsque l'on considère la longévité d'un tel composant essentiel de votre produit.

Une autre différence très importante est que Supabase utilise PostgreSQL au lieu d'une base de données NoSQL comme Firebase. C'est également une énorme différence étant donné que Firestore, la base de données Firebase, est entièrement propriétaire. PostgreSQL est une solution de stockage commune qui vous permet techniquement de migrer vos données de Supabase à l'avenir vers n'importe quelle autre base de données PostgreSQL.

En ce qui concerne les autres services proposés par Firebase, tels que les notifications ou les solutions ML, Supabase n'a rien de similaire. Vous aurez toujours besoin d'autres fournisseurs pour déployer de telles choses, par exemple à partir d'AWS, d'Azure ou, bien sûr, de Firebase.

Conclusion

Comme vous le voyez, Supabase est une alternative viable si vous aimez ce que Firebase a à offrir mais que vous ne voulez pas utiliser un produit Google. Et si vous avez des inquiétudes concernant les futures migrations de bases de données ou le code propriétaire des services de Firebase, Supabase est totalement transparent dans son développement en tant que produit open source. Au moment de la rédaction, il est en version bêta publique, mais devrait être prêt à être utilisé pour des projets de taille moyenne.