Introducción
Soy principalmente un desarrollador indie de iOS, pero he estado considerando la idea de crear algunas apps multiplataforma. Probé Firebase, pero era escéptico porque leí una mala historia sobre usuarios que recibían facturas desorbitadas usando Firebase. Aun así, hasta el día de hoy, Google no te permite establecer un límite de presupuesto. Así que empecé a buscar una alternativa a Firebase, o debería decir ¿un servicio de base de datos multiplataforma fácil de usar?
Me decanté por Appwrite y Supabase. Después de probar ambos con mi experiencia de nivel principiante en backend, esta es mi perspectiva.
TL;DR:
Si te autoalojas y no necesitas almacenar datos relacionales, usa Appwrite. Si no te importa pagar y quieres un desarrollo robusto y sin complicaciones a largo plazo usando la versión en la nube, Supabase. Y compartiré por qué.
Principal diferencia entre Supabase VS Appwrite
Tecnología de base de datos
Appwrite usa NoSQL y Supabase usa PostgresSQL.
Si estás familiarizado con Firebase, Appwrite te resultará familiar. Pero si quieres una base de datos relacional, Supabase.
Precios en la nube
A marzo de 2025, ambos servicios ofrecen un plan gratuito con límites. Por ejemplo, 1-2 proyectos, ancho de banda limitado y la cantidad de usuarios concurrentes, etc. Puedes consultar los precios más recientes en los enlaces anteriores. Actualmente, más allá del plan gratuito, Supabase empieza en $25/mes y Appwrite empieza en $15/mes.
Interfaz de usuario
Appwrite
- Menos elementos en el panel, una vista general más limpia.
Supabase
- Más opciones, pero parece un poco complicado.
Autoalojamiento
Ambos son fáciles de desplegar. Sin embargo, la versión autoalojada de Supabase es bastante limitada, y es una versión recortada de su versión en la nube. A diferencia de Appwrite, donde puedes obtener todo de la versión autoalojada. Estos son algunos problemas que encontré al autoalojar Supabase:
-
La versión autoalojada de Supabase solo permite un proyecto por instancia; es diferente de la versión en la nube que usas a través de su plataforma, donde puedes crear muchos proyectos.
-
Estaba intentando encontrar y modificar la redirección de URL para la autenticación, pero el botón no está en el menú como en la versión en la nube. Así que visité el servidor en la nube, fui a la página, copié el enlace y lo cambié para que apuntara a mi instancia. Entonces pude ver las opciones, pero no pude modificarlas. Supongo que es una de las limitaciones de la versión recortada.
-
La documentación es mayormente para la versión en la nube, y no se puede aplicar a la versión autoalojada sin problemas. Esto se debe a que faltan ciertas configuraciones y opciones.
Appwrite, por otro lado, lo puse en marcha muy rápido. Y me pareció que la documentación es fácil de seguir.
Sincronización sin conexión
Si tu app no se limita solo a un sitio web, es probable que en algún momento necesites gestionar la sincronización sin conexión. En este sentido, Supabase es más fácil de gestionar, ya que hay librerías y servicios de terceros que puedes usar. Opciones como Powersync y Brick son comunes. Para Appwrite, tendrás que escribir tu propia lógica de sincronización, ya que no pude encontrar ninguna librería fácil de usar para gestionar la sincronización sin conexión.
Nota final
Actualmente estoy usando Appwrite autoalojado porque:
- Una instancia, múltiples proyectos - puedo jugar con muchos proyectos sin preocuparme por límites y facturas
- Totalmente funcional - Sin diferencia con la versión en la nube (¿creo? Al menos no me he encontrado con nada que necesitara que no estuviera)
- Documentación fácil de seguir
- Supabase parece empujarte a usar su plan en la nube recortando muchas funciones, y eso no me gusta
- Probar NoSQL - Tengo proyectos usando la versión en la nube de Supabase y es buena. Pero eventualmente necesitaré una alternativa autoalojada, y por ahora Appwrite parece ofrecer una mejor oferta.
Si no te importa pagar, Supabase es genial. Si quieres ensuciarte las manos o familiarizarte más con NoSQL, autoalojar Appwrite es bastante divertido.
Referencia:
Esta publicación de reddit mientras investigaba.