PocketBase: Un backend de base de datos listo para tus proyectos

Bases de datos
9 de mayo de 2024

Desde hace unos meses estoy usando un nuevo backend llamado PocketBase para mis proyectos, y la verdad es que estoy encantado. Me sorprende mucho que aún no sea conocido entre la comunidad dev hispana, pero para eso estoy aquí, para traeros las mejores opciones para vuestros proyectos.

¿Qué es PocketBase?

PocketBase es un backend de base de datos (gratuito y open source) muy sencillo que usa SQLite por detrás y está programado en Go. Y es que aparte de otras muchas cosas, algo muy bueno que ofrece es que los propios campos de la base de datos son propios de un frontend que puedes usar de una forma cómoda, como escribir un artículo en un editor visual (WYSIWYG), subir imágenes o cualquier tipo de archivo, relacionar tablas, entre otras muchas opciones que te harán la vida mucho más fácil.

Edición de un registro en la base de datos.

He visto que la tendencia actual es usar SaaS/BaaS como Supabase dependiendo de un servicio de terceros que puede conllevar facturas muy elevadas, aunque a priori estés en una capa gratuita. Honestamente, para mí hacer eso es un error, aunque de eso hablaré en otro artículo de una forma más extendida.

Backups

Otra de las cosas bastante buenas que trae PocketBase es su sistema de backups. Puedes configurar backups automatizadas gracias a la opción de cronjob, y además, puedes configurar un bucket S3 ya sea en AWS S3, Cloudflare R2, etc, para almacenar las backups fuera del sistema de PocketBase.

Configuración de backups.

Archivos

También puedes almacenar los archivos que subes desde PocketBase en un bucket S3, de la misma forma que las backups. Si no usas S3, los archivos se almacenarán de forma local donde está instalado PocketBase.

Configuración de S3 de archivos.

Además de todo esto, si usas PocketBase completamente como backend, puedes configurar plantillas de email para los registros de cuentas, puedes proporcionar diferentes proveedores de autentificación, entre otras muchas opciones.

También tiene otras opciones como la suscripción en tiempo real de los cambios de la base de datos (Realtime Database) con la cual podrás escuchar los cambios en cualquier tabla y hacer lo que quieras basándote en esos cambios. 

Por si no fuera poco, también puedes extender PocketBase como si fuera un framework creando "hooks" que se ejecutarán conjuntamente con PocketBase.

Y como dato adicional, aún no tiene modo oscuro, pero puedes usar extensiones como Dark Reader y activarlo cuando estés usando PocketBase para que se vea en modo oscuro como puedes ver aquí.

Modo oscuro con extensión Dark Reader.

Modo oscuro con extensión Dark Reader.

Aún está en desarrollo

PocketBase aún no ha llegado a la versión 1.0, pero después de bastantes pruebas y unos meses en funcionamiento, he comprobado personalmente que es una opción muy válida para un proyecto en producción.

Conclusión

Sin duda alguna para mí, PocketBase es una muy buena opción para comenzar un proyecto pequeño o mediano que necesite de una base de datos y un mínimo backend. Además, es totalmente gratuito (sin capas de pago) y open source, por lo que puedes intentar aportar al proyecto, o incluso puedes hacer un fork y crear tu propia versión mantenida por ti.

Lo llevo usando unos meses en mis proyectos, incluyendo esta web, y me está aportando una rapidez y tranquilidad a la hora de crear un nuevo proyecto que no me aportaban otras bases de datos.

Si tienes un proyecto pequeño o mediano que necesite de base de datos, y no quieres depender de servicios de terceros, y quieres que la implementación sea rápida y fiable, esta es de momento, mi mejor recomendación.

Lucas O. S.
Lucas O. S.Autor del artículo

Emprendedor y autodidacta madrileño con más de 20 años de experiencia en desarrollo y diseño de aplicaciones web, y más de 10 años de experiencia en administración de sistemas.

Este artículo ha sido escrito por un alien sin usar ningún tipo de IA ni tecnologías del estilo.

Comentarios

Cargando comentarios...