3 puntos por GN⁺ 2025-11-29 | 1 comentarios | Compartir por WhatsApp
  • PocketBase es un backend de código abierto de un solo archivo que incluye base de datos, autenticación, almacenamiento de archivos y panel de administración
  • Incluye una base de datos embebida de alto rendimiento con constructor de esquema, validación de datos, suscripción en tiempo real y REST API
  • Soporta inicio de sesión con correo electrónico/contraseña y inicio de sesión OAuth2 (Google, Facebook, GitHub, GitLab) para simplificar la gestión de usuarios
  • Permite almacenar archivos de forma segura en almacenamiento local o S3, y adjuntar medios a un registro de base de datos con creación automática de miniaturas
  • Puede utilizarse como aplicación autónoma o como framework extensible con extensiones de Go y JavaScript, útil para construir backends personalizados y livianos

Resumen de PocketBase

  • PocketBase es una plataforma de backend de código abierto que funciona como un único archivo ejecutable
    • Integra base de datos, autenticación, almacenamiento de archivos y panel de administración
    • Tiene una estructura que permite una puesta en marcha rápida sin configuración de servidor adicional

Funciones de base de datos

  • Incluye una base de datos embebida con soporte para constructor de esquema, validación de datos, suscripción en tiempo real y REST API
    • Proporciona detección y suscripción a cambios de datos en tiempo real
    • Permite consultar, crear, editar y eliminar datos fácilmente mediante la REST API

Autenticación de usuarios

  • Soporta la gestión de usuarios de la app y inicio de sesión con correo electrónico/contraseña
  • Permite registrarse e iniciar sesión con cuentas de Google, Facebook, GitHub y GitLab a través de autenticación OAuth2

Almacenamiento de archivos

  • Puede guardar archivos de forma segura en almacenamiento local o S3
    • Es posible adjuntar archivos multimedia a registros de la base de datos
    • Proporciona generación automática de miniaturas al subir archivos

Escalabilidad y soporte para desarrolladores

  • PocketBase puede utilizarse como una aplicación autónoma o como un framework extensible mediante hooks de Go y JavaScript
    • Los desarrolladores pueden agregar su propia lógica para implementar un backend personalizado

Ejemplo de SDK de JavaScript

  • Es posible interactuar con el servidor de PocketBase mediante el SDK de JavaScript
    • En el código de ejemplo se muestra la consulta de listados de registros de la colección example, la consulta de un único registro, eliminación y creación, así como suscripción y cancelación de suscripción en tiempo real
    • Se brindan métodos como pb.collection('example').getList(), getOne(), create(), delete(), subscribe()

1 comentarios

 
GN⁺ 2025-11-29
Opiniones en Hacker News
  • Decir que “SQLite no escala” es, en la mayoría de los casos, una ilusión de optimización prematura
    En la práctica, rara vez se llega al límite de contención de WAL, y la simplicidad de un binario único me parece muchísimo mejor que la complejidad de un sistema distribuido
    Hoy en día hasta a proyectos pequeños les conectan por defecto un clúster de BD y un caché con Redis, pero Pocketbase demuestra que en el 99% de las apps CRUD el cuello de botella no es la BD, sino la latencia de red y el tiempo de administración del desarrollador

    • Para la mayoría de las apps, conseguir usuarios es un cuello de botella más difícil que cualquier limitación técnica
    • Yo tengo mi blog personal en el droplet más barato de DigitalOcean y uso SQLite
      Lo probé con benchmarks hechos con un CLI en Rust, y rindió mejor que MySQL o Postgres en la misma máquina
      Para proyectos de este tamaño, SQLite es ideal
    • Pero por la falta de un tipo decimal, es difícil usar SQLite para operaciones financieras
      Tener que manejar todos los cálculos del lado de la aplicación es incómodo
  • Cuando veo Pocketbase, le doy upvote de inmediato
    Lo uso en varias apps de producción y ha sido muy estable
    A veces hay cambios que rompen cosas, pero en general es excelente y también escala bien
    Cuando falta alguna función puede ponerse algo complicado, pero un desarrollador con experiencia puede resolverlo sin problema

    • Me encanta esa línea del FAQ: “si no tienes tiempo ni para leer la documentación y solo vas a depender de herramientas de IA, no uses Pocketbase”
    • Pienso igual. Yo también lo extendí con JS y funciona muy bien
      Eso sí, como hay un solo desarrollador, me preocupa el mantenimiento a futuro
      Aun así, es una opción muy buena cuando necesitas separar el front y el back
    • Me da curiosidad saber qué tipo de apps de producción están corriendo con Pocketbase
  • Uso mucho Pocketbase para proyectos personales y herramientas internas
    Junto con PocketPages puedes usar fácilmente routing basado en archivos y plantillas
    Gracias a la función automática de migraciones de BD, puedes incluir los cambios de esquema dentro del control de versiones
    Incluso le conecté un servidor del protocolo Gemini para explorar mi grafo de conocimiento personal con Lagrange

    • Quiero alojarlo en una Raspberry Pi 5; me pregunto qué exigencias de rendimiento tiene y si, comparado con Supabase, tiene alguna limitación particular
    • No sé qué es Lagrange. No parece ser un proyecto relacionado con LLM ni con grafos de conocimiento
  • Pocketbase es un servidor backend configurable desde GUI
    Puedes crear un backend funcional casi sin código, así que encaja bien para prototipos, MVPs y apps simples
    Firebase fue quien popularizó este concepto

    • Me pregunto qué hace exactamente
      Los backends que yo escribo necesitan de cientos a miles de líneas de código; quiero entender cómo reemplaza eso
      También me interesa saber cuál es el rango de apps que se pueden construir con una herramienta así
    • Viendo los ejemplos de la página principal, me recordó a Parse
  • Probé Pocketbase en un side project y de verdad me impresionó
    Llevo mucho tiempo trabajando con Django, pero en proyectos pequeños y medianos Pocketbase encaja mucho mejor que construir un backend tradicional desde cero
    Si tienen preguntas, con gusto las respondo

    • La integración GIS de Django es excelente; me pregunto cómo anda Pocketbase en eso
      Y también quiero saber si soporta PostgreSQL o si es solo para SQLite
    • También me interesa saber qué tan fácil es la migración desde un backend existente basado en SQLite
    • Yo también lo usé en un proyecto personal, pero los LLM se confunden seguido al interactuar con Pocketbase
      Por eso hice una Claude Skill; me pregunto si alguien más ha tenido una experiencia parecida
  • Trailbase es una implementación de la misma idea, pero en Rust

    • Tiene una página de comparación
    • Me cayó bien Trailbase porque en los ejemplos no omiten los comandos curl
    • Pocketbase está basado en SQLite, pero me resultó incómodo que no soporte columnas NULLABLE
      Por eso me cambié a Trailbase
    • Trailbase puede ejecutar JS en endpoints
      Es decir, también puede alojar toda la app
      Enlace a la guía
    • Viendo eso, también se podría decir que Pocketbase resulta más atractivo
  • Estoy usando Pocketbase como capa de autenticación para un side project
    Está en kavla.dev, y el sistema de hooks es excelente
    Gracias a la documentación de hooks de eventos en Go, también pude implementar automatización de infraestructura con facilidad

  • Armé un MVP rápido con SQLite y DuckDB, pero después me arrepentí en la etapa de backups y puesta en producción
    Creo que me habría ido más fácil si hubiera empezado con Supabase desde el principio

  • Yo hice OpenSOHO con Pocketbase, y me ahorró muchísimo tiempo de desarrollo
    Le hice unas pequeñas modificaciones para reutilizar el backend, pero no fue difícil
    Con solo ver las capturas de pantalla, enseguida se nota la huella de Pocketbase
    Enlace a GitHub

  • Como me preocupaban los backups de SQLite en Pocketbase, hice yo mismo sqlrsync.com, una herramienta para hacer respaldos con sqlite3_rsync incluso mientras está en ejecución
    El MVP ya funciona y, al estar basado en Cloudflare Durable Objects, es rápido y estable
    Se agradece cualquier feedback

    • A mí también me gusta SQLite. Estoy usando replicación continua con litestream; me pregunto si usas SQLite rsync
    • Me pregunto si has probado la API de backup en línea de SQLite. Parece mejor evitar el acceso directo al archivo en bruto
    • Quiero entender cuál es la diferencia entre sqlrsync y litestream