6 puntos por GN⁺ 2024-01-08 | 1 comentarios | Compartir por WhatsApp

PocketBase - backend de código abierto para tu próximo SaaS y app móvil

  • Base de datos en tiempo real: ofrece una base de datos integrada de alto rendimiento con constructor de esquemas, validación de datos y suscripciones en tiempo real, además de una API REST fácil de usar.
  • Autenticación: administra sin complicaciones el inicio de sesión con correo electrónico/contraseña y OAuth2 (Google, Facebook, GitHub, GitLab).
  • Almacenamiento de archivos: guarda archivos de forma práctica en almacenamiento local o S3, adjunta medios fácilmente a registros de la base de datos y genera miniaturas al instante.
  • Extensible: puede usarse como app independiente o como framework que se puede ampliar con hooks de Go y JavaScript para crear un backend portable personalizado.

Explorando las funciones

  • JavaScript SDK: con PocketBase puedes listar o buscar registros de la colección example, obtener un solo registro, eliminarlo, crear nuevos registros y suscribirte a cambios en tiempo real.
  • Dart SDK: también se ofrece un SDK para desarrolladores que usan el lenguaje Dart.

Opinión de GN⁺

  • PocketBase es una solución de código abierto que ofrece funciones de backend para el desarrollo de SaaS y apps móviles, incluyendo base de datos en tiempo real, autenticación y almacenamiento de archivos.
  • Los usuarios pueden utilizar fácilmente la API REST y cuentan con la flexibilidad de ampliar el backend según sea necesario usando Go y JavaScript.
  • Esta solución ayuda a los desarrolladores a ahorrar tiempo y esfuerzo al crear prototipos rápidamente o construir productos reales, contribuyendo a simplificar el proceso de desarrollo y mejorar la eficiencia.

1 comentarios

 
GN⁺ 2024-01-08
Opiniones de Hacker News
  • Experiencia usando Pocketbase

    • Experiencia positiva usando Pocketbase como backend/base de datos para una app con React y Vite.
    • Usado principalmente para autenticación y gestión de cuentas de pago/gratuitas.
    • Funciones útiles:
      • El hosting es muy fácil. Lo eligieron en lugar de Appwrite o Supabase, especialmente porque Supabase es complicado de autohospedar.
      • Con las colecciones de vista se puede devolver solo un subconjunto de los datos necesarios.
      • Se puede extender con Go o JS, así que en casos no muy complejos incluso puede funcionar sin backend adicional.
    • Planea seguir usándolo para proyectos pequeños o side projects, y está considerando usarlo como CMS o como backend para extensiones de navegador.
  • Experiencia desarrollando con Pocketbase

    • Lleva 2 meses desarrollando con Pocketbase y planea desplegarlo en producción en 1-2 meses.
    • La experiencia ha sido muy satisfactoria; necesitaban un sistema simple para desarrollar la web app de la empresa de un amigo.
    • Con Pocketbase manejan en una sola pieza el servidor web, JavaScript del lado del servidor (TypeScript compilado) y la base de datos SQLite.
    • Se puede hospedar a bajo costo, y el frontend está desarrollado con SvelteKit y TypeScript.
    • Está muy satisfecho con las respuestas rápidas y el soporte claro del desarrollador.
    • Hay algunos problemas menores (huecos en la documentación, tener que escribir su propio cargador CSV, lentitud en la interfaz CRUD, etc.), pero en general está muy contento con el proyecto.
    • Es simple y permite programarlo todo con TypeScript, así que encaja perfectamente con lo que necesitaban.
    • No es de alto rendimiento, pero no lo necesitaban; también planea usarlo en side projects.
    • Como parte del contrato, la empresa de su amigo planea donar a Pocketbase.
  • Experiencia usando Pocketbase en producción

    • Ha usado Pocketbase en producción durante varios meses junto con alpinejs.
    • La filosofía de desarrollo es realista y práctica, y mejora cada semana sin inflarse de funciones.
    • Le preocupa si será posible mantener el nivel de soporte a medida que se vuelva más popular, así como la posibilidad de desgaste del desarrollador.
    • Recomienda fuertemente apoyar el proyecto a quienes lo usan para generar ingresos.
  • Impresiones sobre Pocketbase

    • Valora mucho que el proyecto intente activamente evitar la complejidad y mantener un enfoque simple y minimalista.
    • Resulta muy atractiva la facilidad de desplegarlo subiendo un solo binario al servidor.
    • Con la incorporación de soporte para JavaScript en el backend, se perfila como un competidor serio frente a frameworks como Remix y Next.js.
    • Hay expectativa por la versión v1.
  • Gestión de una colección de vinos con Pocketbase

    • Exploró un frontend que pudiera usarse sobre una base de datos sqlite para diseñar y almacenar una colección de vinos.
    • Necesitaba un único ejecutable, una interfaz de administración y una base de datos que pudiera guardar en su laptop.
    • Agradece a Pocketbase y dice que por esto sigue regresando a Hacker News.
  • Posibilidad de soporte para GraphQL API en Pocketbase

    • Pocketbase se ve muy bien y parece usable para proyectos pequeños.
    • Se pregunta si en el futuro podría soportar una GraphQL API.
  • Impresiones sobre proyectos open source

    • Le alegra que haya tantos buenos proyectos open source en este espacio.
    • Grist y NocoDB están más enfocados en la gestión de bases de datos y ofrecen una forma fácil de empezar.
  • Preguntas sobre funciones de Pocketbase

    • En la documentación no queda claro cómo maneja el control de acceso a nivel de fila, la integración con el resto del mundo (envío de emails, activación de triggers, etc.), exportación/importación de CSV, internacionalización, etc.
    • Pregunta si estas funciones son posibles, si son sencillas o si hay que extenderlas con Go o JS.
  • Posibilidad de personalizar la página de operaciones CRUD

    • Pregunta qué tanto se puede personalizar la "crud operations page".
  • Evaluación de Pocketbase

    • Probó varios PaaS, incluyendo Supabase y Appwrite, pero Pocketbase es el mejor.
    • Excelente rendimiento, funciones intuitivas, posibilidad real de autohospedarlo y una experiencia de despliegue disfrutable.