Ir al contenido

Introducción

Rebase es el backend de código abierto para PostgreSQL, con un panel de administración para tu equipo, creado con React y TypeScript. Te ofrece todo lo necesario para construir una aplicación lista para producción sobre PostgreSQL:

  • Esquema como código — Define tus modelos de datos como colecciones de TypeScript. Rebase genera tablas de PostgreSQL, una UI CRUD completa, endpoints de API REST y un SDK tipado a partir de una única fuente de verdad.
  • Panel de administración instantáneo — Un panel atractivo y rápido basado en React con tablas estilo hoja de cálculo, listas, formularios, tableros Kanban, edición en línea y sincronización en tiempo real.
  • Backend integrado — Autenticación (contraseñas, magic links, códigos de un solo uso, MFA, claves de API y doce proveedores OAuth/OIDC), almacenamiento de archivos (local o S3), Seguridad a Nivel de Fila (RLS), historial de entidades y tiempo real mediante WebSockets — todo integrado.
  • Radicalmente extensible — Si puedes crearlo en React, puedes añadirlo a Rebase. Campos personalizados, vistas personalizadas, plugins y acceso completo a hooks internos.

Rebase es un backend y un panel de administración que comparten un servidor. Comienza por el que hayas venido a buscar:

Quiero… Empieza aquí Lo que obtienes
Un backend y un panel de administración Quickstart Colecciones en TypeScript, una UI CRUD generada, una API REST, autenticación, almacenamiento y tiempo real
Solo la API, sobre mi propia base de datos Backend only Una API REST headless y SDK sobre tu PostgreSQL existente — sin panel de administración, sin archivos de colecciones

Ninguna de las opciones es una puerta de un solo sentido: un proyecto headless puede incorporar un panel de administración añadiendo archivos de colección, y un proyecto completo puede servir tablas para las que no tiene ninguna colección.

┌──────────────────────────────────────────────────────┐
│ Client Applications │
│ ┌──────────────┐ ┌───────────────────────────────┐ │
│ │ Your App │ │ Rebase CMS + Studio │ │
│ │ (Any Tech) │ │ Tables / Lists / Kanban │ │
│ └──────┬───────┘ └──────────────┬────────────────┘ │
└─────────┼──────────────────────────┼─────────────────┘
│ HTTP + WebSocket │
▼ ▼
┌──────────────────────────────────────────────────────┐
│ Rebase Backend (Node.js + Hono) │
│ ┌─────────┐ ┌──────┐ ┌─────────┐ ┌───────────────┐ │
│ │ REST API│ │ Auth │ │ Storage │ │ WebSocket RT │ │
│ └────┬────┘ └──┬───┘ └────┬────┘ └──────┬────────┘ │
└───────┼─────────┼──────────┼─────────────┼───────────┘
│ │ │ │
▼ ▼ ▼ ▼
┌──────────────────────────────────────────────────────┐
│ PostgreSQL (Drizzle ORM) │
└──────────────────────────────────────────────────────┘
pnpm dlx @rebasepro/cli init my-app
cd my-app

init genera un .env listo para usar — sin necesidad de editarlo. Luego:

pnpm install
pnpm run dev

Eso es todo para la primera ejecución. No hay que instalar ninguna base de datos ni realizar ningún paso de esquema: sin DATABASE_URL configurada, rebase dev inicia un PostgreSQL gestionado (PGlite) en el directorio del proyecto, genera el esquema a partir de tus colecciones y crea las tablas al arrancar.

Lee las URLs en la salida. rebase dev elige un puerto libre por proyecto en lugar de puertos fijos, por lo que variarán entre proyectos y máquinas. La primera cuenta que registres se convierte en administrador — en tu máquina. En cambio, un despliegue en producción define su administrador mediante REBASE_ADMIN_EMAIL y REBASE_ADMIN_PASSWORD (consulta Configuration).

Para usar tu propio Postgres en su lugar, descomenta DATABASE_URL en .env y ejecuta pnpm run dev nuevamente.

→ Sigue la Guía de inicio rápido completa para un recorrido paso a paso, incluyendo cómo conectar tu propia base de datos.

Característica Descripción
Vistas de hoja de cálculo Tabla rápida y virtualizada con edición en línea, filtrado, ordenación y búsqueda de texto
Vista de lista Vista de lista vertical limpia y adaptable para colecciones
Tablero Kanban Vista de tablero con arrastrar y soltar agrupada por cualquier propiedad enum
Relaciones Uno a uno, uno a muchos, muchos a muchos con tablas de unión y joins multisalto
Seguridad a Nivel de Fila Políticas RLS al estilo de Supabase definidas en la configuración de tu colección
Autenticación JWT + tokens de actualización, doce proveedores OAuth/OIDC, magic links, códigos de un solo uso, MFA con TOTP, claves de API con permisos limitados y control de acceso basado en roles
Almacenamiento de archivos Sistema de archivos local o compatible con S3 con campos de subida y explorador
Sincronización en tiempo real Actualizaciones en vivo mediante WebSockets en todos los clientes conectados
Historial de entidades Pista de auditoría completa para cada creación, actualización y eliminación
API REST Endpoints CRUD autogenerados para cada colección
Importación/Exportación de datos Importación de CSV, JSON y Excel con mapeo de campos; exportación de CSV/JSON
Editor de colecciones Editor visual de esquemas que genera TypeScript mediante manipulación de AST
SDK tipado SDK de JavaScript con tipos seguros para tus aplicaciones frontend
Sistema de plugins Extiende cada parte de la UI: barra de herramientas, formularios, campos, página de inicio
Mejora de datos con IA Autocompletado impulsado por LLM para campos de texto
Tareas programadas (Cron) Tareas en segundo plano programadas con monitorización, registro y panel de Studio
Funciones personalizadas Rutas de Hono basadas en archivos montadas automáticamente con middleware de autenticación y acceso a la BD
Servicio de correo electrónico SMTP integrado para restablecimiento de contraseña, verificación y correos transaccionales
Ramificación de base de datos Copias aisladas instantáneas de tu base de datos para desarrollo, staging o pruebas
Webhooks Notificaciones salientes firmadas con HMAC en INSERT, UPDATE, DELETE
Canales de difusión Canales WebSocket para mensajería en tiempo real entre clientes conectados
Seguimiento de presencia Rastrear usuarios en línea y sincronizar el estado compartido entre participantes
  • Quickstart — Empieza a funcionar en 2 minutos
  • Backend only — La API headless sobre una base de datos que ya tienes
  • Project Structure — Comprende el código generado y los cinco conceptos que asumen el resto de estas páginas
  • Collections — Define tu esquema de datos
  • Backend — Configura la autenticación, el almacenamiento y la API
  • Architecture — Comprende cómo encaja todo