PageKit: el creador de sitios GrapesJS autoalojado, con el código fuente incluido. Obtener acceso anticipado

Explorar por categoría


GrapesJS Almacenes

Los plugins de almacenamiento de GrapesJS conectan el sistema de guardado y carga del editor con backends externos. En lugar de depender solo del almacenamiento local, estos plugins te permiten persistir los diseños en APIs REST, WebSockets, bases de datos o servicios en la nube. Explora integraciones de almacenamiento gratuitas y premium: cada ficha incluye documentación de la API y notas de compatibilidad para las distintas versiones de GrapesJS.

Loading...Loading...Loading...Loading...Loading...Loading...Loading...Loading...Loading...Loading...Loading...Loading...Loading...Loading...Loading...Loading...Loading...Loading...Loading...Loading...Loading...Loading...Loading...Loading...Loading...Loading...Loading...Loading...Loading...Loading...

Sobre GrapesJS Almacenes

GrapesJS incorpora un sistema de almacenamiento que guarda y carga el contenido del editor de forma automática, pero por defecto solo escribe en el almacenamiento local del navegador, lo que ata los diseños a un único dispositivo y sesión. Los plugins de almacenamiento en GJS.Market lo sustituyen o amplían con capas de persistencia conectadas a un backend. Los plugins de almacenamiento por API REST son los más habituales: implementan la interfaz StorageManager de GrapesJS para enviar el contenido del editor como JSON mediante POST a tu endpoint al guardar y recuperarlo con GET al cargar. Los plugins más avanzados añaden resolución de conflictos para edición multiusuario, versionado con barra lateral de historial y flujos de borrador y publicación. Los plugins de almacenamiento nativos en la nube se conectan directamente con Firebase Firestore, Supabase o PocketBase sin necesidad de una capa de API propia: tú aportas las credenciales y el plugin gestiona todas las operaciones de lectura y escritura. Todos los plugins de esta categoría documentan el formato de respuesta que requiere el servidor e incluyen implementaciones de backend de ejemplo en Node.js, PHP y Python.

GrapesJS Almacenes — Preguntas frecuentes

¿Cómo guarda GrapesJS el contenido del editor?
El StorageManager serializa el proyecto —componentes, estilos, páginas y recursos— en un único objeto JSON y se lo entrega al almacenamiento activo. Por defecto ese almacenamiento es el localStorage del navegador, así que el trabajo nunca sale del dispositivo. El autoguardado está activado de serie y se dispara tras un número determinado de cambios, controlado por stepsBeforeSave.
¿Cómo guardo el contenido de GrapesJS en mi propia API?
Define storageManager.type como remote y configura los endpoints de load y store. GrapesJS enviará entonces el JSON del proyecto por POST al guardar y lo recuperará por GET al cargar; las cabeceras y credenciales van en el mismo bloque de opciones. Para cualquier cosa que vaya más allá de REST plano, registra un almacenamiento propio con Storage.add e implementa tú mismo load y store.
¿Cuál es la diferencia entre el JSON del proyecto y el HTML exportado?
El JSON del proyecto es la fuente editable: contiene el modelo de componentes, así que al recargarlo se restaura una página plenamente editable. getHtml y getCss producen la salida publicable, que no puede reconvertirse en componentes de forma fiable. Guarda ambos —el JSON para editar y el HTML/CSS para servir— y nunca trates la exportación como tu fuente de verdad.
¿Puedo desactivar el autoguardado en GrapesJS?
Sí. Pon storageManager.autosave en false y dispara el guardado tú mismo con editor.store(), normalmente desde un botón Guardar o un comando de publicación. Es la configuración adecuada cuando guardar resulta costoso o requiere validación previa. También puedes subir stepsBeforeSave para conservar el autoguardado pero hacerlo menos frecuente.
¿GrapesJS admite versionado o edición multiusuario?
En el núcleo no: guarda un único estado actual por proyecto y prevalece la última escritura. Los plugins de esta categoría añaden historial de versiones con barra lateral de restauración, flujos de borrador y publicación y resolución de conflictos entre editores concurrentes. Si varias personas van a editar la misma página, elige un plugin que declare su estrategia de conflictos en lugar de confiar en un almacenamiento remoto simple.