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

Código abierto · Autoalojado

Crea tu propio constructor de páginas de código abierto

Crea un creador de páginas visual que puedas alojar tú mismo, personalizar y ampliar. Usa GrapesJS como motor de edición de código abierto y añade la funcionalidad que tu producto necesita con plugins.

Código abiertoAutoalojadoPersonalizableExtensibleNo hay fijación de editor por parte del proveedor

Bloques, lienzo y controles de estilo — ejecutándose dentro de tu aplicación, en tu infraestructura.

26k+

GitHub estrellas

BSD-3-Clause

Licencia principal

1.4M+

Descargas mensuales de npm

100+

Plugins en GJS.Market

Lo que te compra el código abierto

¿Qué te ofrece un creador de páginas de código abierto?

El código abierto no es una lista de características: es un conjunto de derechos sobre el editor en tu producto. Estos son los seis que cambian la forma en que construyes.

Control de código

El código fuente del editor es legible. Puedes rastrear un comportamiento hasta la línea que lo causa, parchearlo y bifurcarlo si alguna vez lo necesitas.

Autoalojamiento

GrapesJS es una librería del lado del cliente que se agrupa. Nada llama a casa, y el editor sigue funcionando independientemente del tiempo de actividad de los demás.

Propiedad de los datos

Los proyectos, páginas y recursos van a tu base de datos a través de un adaptador de almacenamiento que escribes. El editor nunca ve un servidor que no controles.

Control de la interfaz

Los paneles, botones, sectores y toda la carcasa circundante son tuyos para organizar. Tus usuarios no tienen que cumplir con una interfaz de editor genérica.

Libertad de integración

Tus APIs, tu autenticación, tu almacenamiento de activos, tu pipeline de publicación. El editor llama a las funciones que le asignas.

No hay fijación de editor por parte del proveedor

Tu experiencia principal de edición no está licenciada desde una plataforma alojada, así que el precio o la hoja de ruta de nadie más decide si tu producto sigue funcionando.

El malentendido

Código abierto no significa construir todo desde cero

El error más caro que cometen los equipos aquí es tratar "queremos ser dueños de nuestro creador de páginas" y "tenemos que escribir un editor visual" como la misma frase. No lo son.

Código abierto

no significa
Construye todo tú mismo

Código abierto

medios
OwnPersonalizarAmpliación

El objetivo no es reinventar cada parte de un editor visual. Es partir de una base de código abierto y dedicar tu tiempo de ingeniería al producto que hace única tu aplicación.

Eso es un replanteamiento, no una promesa de almuerzo gratis. Una fundación de código abierto elimina el lienzo, el modelo de componentes y el motor de estilismo de tu lista de pendientes. No elimina tu backend, tu flujo de trabajo de publicación ni el trabajo de mantener una dependencia actualizada — esos pasan a tu agenda en cuanto te alojas por tu cuenta.

Scratch vs base

¿Crear un creador de páginas desde cero o empezar con código abierto?

Una comparación útil debe ser honesta sobre qué capacidades funcionan, cuáles llegan como una API que aún tienes que usar y cuáles son simplemente tuyas en cualquier caso. Esta tabla separa esas tres.

CapacidadConstruir desde ceroFundación de código abierto
Lienzo visualConstrúyeloIncorporado
Modelo de componentesConstrúyeloIncorporado
Arrastrar y soltarConstrúyeloIncorporado
BloquesConstrúyeloAPI integrada — el contenido es tuyo
EstiloConstrúyeloIncorporado
Edición responsivaConstrúyeloIncorporado — lo configuras
ActivosConstrúyeloIncorporado — lo configuras
Texto enriquecidoConstrúyeloIncorporado
Deshacer / volver a hacerConstrúyeloIncorporado
AlmacenamientoConstrúyeloConecta tu backend
PublicaciónConstrúyeloConstruye tu flujo de trabajo
Interfaz de editor personalizadaConstrúyeloIncorporado — lo configuras
Arquitectura de pluginsConstrúyeloIncorporado
Lógica del productoConstrúyeloTu solicitud

Verificado contra GrapesJS 0.23.6 en 2026-09-03 ejecutando cada API en un navegador, no leyendo una lista de funciones. "Integrado" significa que el módulo viene incluido en el paquete central; "API integrado" significa que el mecanismo se incluye pero el contenido no.

El código abierto te da ventaja sin quitarte el control.

El motor

¿Por qué usar GrapesJS como tu motor de construcción de páginas de código abierto?

GrapesJS es un editor visual independiente del framework que instalas desde npm y montas en tu propia interfaz. Estas son las partes sobre las que realmente construirás — y donde termina cada una.

Núcleo

Edición visual

Un lienzo en el que tus usuarios componen directamente: seleccionar, mover, anidar y editar el DOM real en lugar de una vista previa.

Núcleo

Componentes

Estructuras de contenido reutilizables con rasgos tipados, así que un marketer edita un titular en un campo de formulario en lugar de un div.

API central

Bloques

El panel arrastrable es el núcleo; los bloques que hay dentro no lo son. Registras el tuyo propio o instalas un plugin de bloques.

Núcleo

Estilo

Un gestor de estilos con sectores y selectores, para que los usuarios cambien el aspecto de algo sin tocar CSS.

Núcleo

Edición responsiva

Los puntos de interrupción de dispositivos son un módulo central. Defines qué dispositivos ofrece tu producto y a qué anchos se asignan.

API central

Extensibilidad

Un plugin es una función que recibe el editor. Ese es todo el contrato, y es por eso que existe un ecosistema.

Núcleo

Flujos de trabajo HTML / CSS

La salida es HTML y CSS que puedes leer, diferenciar y servir. Útil cuando lo que estás construyendo es genuinamente para la web.

A través de plugins

Flujos de trabajo de correo electrónico

El correo electrónico no está en el paquete básico. MJML y los presets del boletín lo añaden — una capacidad real, pero instalada.

¿Quién posee qué

GrapesJS se encarga del editor. Tu aplicación se encarga del producto.

Cada capa entre "código abierto" y "un creador de páginas que posees" pertenece a alguien. Ser claro sobre cuáles son tuyos es la diferencia entre un plan realista y una sorpresa.

  1. Open SourceCódigo abierto
  2. GrapesJSCódigo abierto
  3. Your ApplicationTú eres dueño
  4. Your BackendTú eres dueño
  5. GJS.Market PluginsOpcional
  6. Your Page BuilderEl resultado

GrapesJS

La base de edición visual de código abierto: lienzo, componentes, bloques, estilos, recursos y el contrato de plugins.

Tu solicitud

Autenticación, panel de control, facturación, usuarios, permisos y la experiencia del producto alrededor del editor.

Tu Backend

Almacenamiento, proyectos, publicaciones, versiones y la lógica de negocio que hace que tu producto merezca la pena pagar.

GJS.Market Plugins

Bloques opcionales, integraciones y funcionalidades especializadas — usadas donde comprar es mejor que construir, pero se saltan donde no lo hacen.

No estás externalizando tu producto. Estás rechazando reescribir un lienzo.

Arquitectura

Crea tu propia arquitectura de constructor de páginas

El editor es una capa, no el sistema. Aquí es donde se sitúa, qué lo rodea y qué te devuelve — así que puedes ver exactamente cuánto de este diagrama es código que tienes que escribir.
  1. Your Product

    Todo lo que hace que tu producto sea tuyo. Nada de eso viene del editor.

    • Authentication
    • Billing
    • Users
    • Permissions
  2. React / Vue / Angular / Your UI

    Lo que ya tengas incorporado. GrapesJS es independiente del framework y se monta en un elemento contenedor.

  3. GrapesJS — Editor Foundation

    La capa de código abierto. Instalado desde npm, configurado por ti, ejecutándose en tu infraestructura.

    • Blocks
    • Styles
    • Assets
    • Components
  4. Your Backend

    Tu API, tu base de datos, tus reglas. GrapesJS llama a las funciones de carga y almacenamiento que escribes.

    • Storage
    • Versions
    • Publishing
    • Business Logic

GrapesJS se encarga de la experiencia de edición. Tu aplicación se encarga de todo lo que hace único a tu producto.

Mira cómo funciona la integración
Casos de uso

¿Qué puedes construir con un creador de páginas de código abierto?

Seis equipos de productos realmente se entregan sobre esta base. Cada uno supone una cantidad diferente de trabajo alrededor del mismo editor.

Público

¿Para quién es un creador de páginas de código abierto?

Cuatro situaciones en las que poseer al editor vale el trabajo que cuesta.

01

Fundadores de SaaS

Quieres ofrecer a los clientes un editor visual sin externalizar la experiencia por la que se juzga tu producto.

02

Equipos de producto

Necesitas edición visual dentro de una aplicación que ya existe, en el framework que ya utiliza.

03

Desarrolladores

Quieres control sobre la arquitectura del editor, el modelo de datos y cada punto de integración.

04

Agencias

Quieres una infraestructura de edición visual reutilizable que puedas llevar a través de proyectos de clientes en lugar de tener que relicenciar por sitio.

Cuando encaje

¿Cuándo deberías elegir GrapesJS?

GrapesJS es una buena respuesta a un tipo específico de requisito. Si la mayor parte de esta lista es tuya, encaja.

Elige GrapesJS cuando necesites:

  • autoalojamiento en infraestructuras que controlas
  • un editor incrustable dentro de una aplicación existente
  • Control sobre la arquitectura de la aplicación
  • Flujos de trabajo de edición personalizables
  • Componentes y bloques personalizados
  • Tu propio backend y modelo de datos
  • Tu propio canal de publicación
  • extensibilidad a través de plugins
  • Salida orientada a HTML/CSS
  • una integración SaaS en lugar de una herramienta independiente
  • un editor personalizable en lugar de una plataforma alojada fija

Lo que asumes a cambio: lo alojas, lo actualizas, escribes las capas de almacenamiento y publicación, y eres responsable del comportamiento del editor cuando algo falla. Eso es un coste real, y es el correcto para pagar solo si la lista anterior es realmente tuya.

Empieza con GrapesJS
Cuando no lo hace

¿Cuándo podría ser mejor otro creador de páginas?

Tres requisitos donde otra herramienta es mejor. Si uno de estos es tu caso, GrapesJS te enfrentará.

  • Una plataforma alojada

    Quieres un producto gestionado, no infraestructura

    Tienes el editor, el alojamiento, las actualizaciones y el soporte como una sola factura, y renuncias al control de versiones, al autoalojamiento y a la posibilidad de cambiar el propio editor.

  • Un editor de componentes React

    Tu necesidad es componer componentes React

    Si las páginas son árboles de tus propios componentes React y nunca HTML que editas a mano, un editor React-first se ajusta más directamente a tu modelo de datos que uno orientado a HTML/CSS.

  • Un creador de páginas web completo

    Necesitas toda la aplicación, no una base

    Si quieres un producto de creación web terminado en lugar de un editor que incrustes, los proyectos que incluyan toda la aplicación te llevarán mucho más rápido.

Ninguna de estas es una debilidad en las otras herramientas. Son productos diferentes que responden a preguntas distintas, y elegir la categoría equivocada cuesta más que elegir la biblioteca equivocada.

Comparar los creadores de páginas de código abierto
Cuatro cosas diferentes

No todos son el mismo tipo de producto

Estos proyectos no son intercambiables. Algunos son librerías que incrustas, otros son aplicaciones que despliegas, y compararlas en una lista de características indiferenciada es cómo los equipos acaban comprometidos con la categoría equivocada. Se agrupan según lo que son antes de compararse con lo que hacen.

Frameworks de editor embebibles

Bibliotecas que instalas desde npm y montas dentro de una aplicación que ya tienes. Tú suministras la interfaz, el backend y la cadena de publicación; la biblioteca se encarga de la edición.

En este grupo

  • GrapesJS

Frameworks de editores React

Bibliotecas para construir un editor sobre tu propio árbol de componentes React. Una página es JSON que describe componentes, no marcado — que es el modelo correcto si tus páginas ya son React.

En este grupo

  • Puck
  • Craft.js

Creadores visuales de sitios web

Aplicaciones que despliegas y usas, en lugar de librerías con las que construyes. Mucho más rápido para un sitio de trabajo y no diseñado para desaparecer dentro del producto de otra persona.

En este grupo

  • Silex
  • Webstudio

CMS / plataformas de contenido

Plataformas de contenido completo donde la construcción visual de páginas es una capacidad entre modelado de contenido, roles y publicación. Adoptas la plataforma, no solo el editor.

En este grupo

  • Webiny
El campo

Comparación con los mejores creadores de páginas de código abierto

CapacidadGrapesJSPuckCraft.jsSilexWebstudioWebiny
LicenciaBSD-3-ClauseMITMITAGPL-3.0AGPL-3.0MIT*
AutoalojadoSí, una librería del lado del cliente que agrupasSí — Docker, npm o fuenteSitios publicados, sí; la documentación desaconseja alojar el constructor en producción por sí mismoSí, pero solo AWS — la documentación es explícita en que no hay soporte para nada más
Incrustable en tu appSí — monta la biblioteca en cualquier elemento contenedorSí — "solo un componente React" en tu árbolSí, pero es un kit de herramientas: construyes tú mismo la interfaz del editorComo servidor Node. No hay montaje documentado para el editor front-endNo — el paquete constructor es privado y no se publica en npmNo — un iframe en una pila Webiny completamente desplegada
Editor visual
Arrastrar y soltar
Componentes personalizadosNo verificado
Edición responsivaPersonalizado — lo construyes túParcial
Backend personalizado / almacenamientoAPI de almacenamiento: tus propias funciones de carga y almacenamientoonPublish / onChange — guardas los datosserializar() / deserializar() — guardas el JSONAPI de conector para almacenamiento y alojamientoSin API de conector; los datos salen mediante exportación de CLIEl almacenamiento está fijo en la creación del proyecto y no puede modificarse posteriormente
Arquitectura de pluginsNinguno — por diseñoNo verificado
Salida HTML / CSS
Flujos de trabajo de correo electrónicoA través de un plugin
ReactNo es el foco principal
MarcoFramework-agnosticReactReactFramework-agnostic (built on GrapesJS)React (React Router v7 output)React (Next.js supported)
Versión verificadagrapesjs 0.23.6@puckeditor/core 0.23.0@craftjs/core 0.2.12@silexlabs/silex 3.9.00.296.06.4.9
Última versiónReleased 2026-08-26Released 2026-08-07No commits on any branch since 2025-02Released 2026-07-26Released 2026-09-01Released 2026-08-27

Licencias leídas desde el propio archivo LICENSE de cada repositorio, versiones y deprecaciones del registro npm, capacidades de la documentación propia de cada proyecto. 2026-09-03 verificado. "No verificado" significa que no pudimos encontrar una fuente primaria de ninguna manera — no es que falte la capacidad. Un guion significa que el proyecto no apunta a ese caso de uso. *La licencia raíz de Webiny crea un directorio empresarial y se remette a licencias por paquete; en la rama predeterminada actual ese directorio está ausente y todas las licencias por paquete son MIT.

Guía de decisión

¿Qué creador de páginas de código abierto deberías elegir?

Tres preguntas, en el orden que realmente reduce el campo. La primera elimina más opciones que las otras dos juntas.

01

¿Estás construyendo un producto alrededor del editor o buscas una herramienta terminada?

  • Un producto — el editor vive dentro de mi aplicación

    Sigue

    Quieres una base que integres y controles. La pregunta 02 reduce qué tipo.

  • Una herramienta terminada — quiero construir sitios con ella

    Creador de sitios web

    Quieres una aplicación, no una biblioteca. Los creadores de sitios web de código abierto desplegables te llevarán mucho más rápido que cualquier framework.

  • Una plataforma de contenido para todo un equipo

    Plataforma CMS

    Si la creación de páginas es uno de los requisitos entre la publicación, los roles y el modelado de contenido, empieza desde una plataforma de contenido.

02

¿Qué es una página en tu producto — margen o un árbol de tus componentes?

  • Marcado que puedo servir, exportar y diferenciar

    GrapesJS

    Salida HTML y CSS, un editor independiente del framework y un adaptador de almacenamiento en tu propia base de datos.

  • Un árbol de mis propios componentes React

    Editor React

    Si las páginas son árboles de componentes serializados como JSON y nunca marcado a mano, un editor React primero es el ajuste más cercano.

  • Ambos, dependiendo de la superficie

    GrapesJS + React

    El envoltorio oficial React monta el editor como un componente React mientras que la salida permanece en HTML/CSS. Este es el caso común en SaaS.

03

¿Puedes encargarte de alojamiento, mejoras y la capa de almacenamiento?

  • Sí — gestionamos nuestra propia infraestructura

    Alojarlo por tu cuenta

    Instala, configúrala, escribe un adaptador de almacenamiento y el editor es realmente tuyo.

  • Ahora mismo no

    Editor alojado

    Una plataforma alojada intercambia el control por otra persona que lleva la infraestructura. Eso es un intercambio legítimo, no un fracaso.

  • Sí, pero no queremos construir todas las funciones

    Foundation + plugins

    Aloja tú mismo al editor y compra las piezas que no sean el diferenciador de tu producto.

La elección correcta depende de si necesitas un producto completo para crear sitios web o una base de editor que se convierta en parte de tu propia aplicación. Todo lo demás — licencias, framework, API de plugins — solo importa una vez que se responde esa pregunta.

Inicio rápido

Empieza a construir tu creador de páginas de código abierto

Cuatro pasos desde npm hasta un generador de páginas conectado al backend. Cada fragmento a continuación se ejecutó contra GrapesJS 0.23.6 en un navegador real antes de su publicación — no adaptado de un registro de cambios.
  1. Your App
  2. GrapesJS
  3. Blocks · Components · Traits
  4. Your Storage API
  1. 01 — Instalación

    Añade GrapesJS a tu solicitud

    Una dependencia. Sin plugin de compilación, sin necesidad de framework.

    npm install grapesjs
  2. 02 — Inicializar

    Monta el editor

    Apúntalo a un contenedor y elige los puntos de interrupción de tu dispositivo. Este es un editor que funciona.

    Monta el editorjs
    import grapesjs from 'grapesjs';
    import 'grapesjs/dist/css/grapes.min.css';
    
    const editor = grapesjs.init({
      container: '#gjs',
      height: '100vh',
      width: 'auto',
      // Reads the markup already inside #gjs as the starting page.
      fromElement: true,
      // No storage yet — step 04 connects your backend.
      storageManager: false,
      deviceManager: {
        devices: [
          { id: 'desktop', name: 'Desktop', width: '' },
          { id: 'tablet', name: 'Tablet', width: '768px', widthMedia: '992px' },
          { id: 'mobile', name: 'Mobile', width: '320px', widthMedia: '480px' },
        ],
      },
    });
  3. 03 — Extensión

    Añadir bloques, componentes y plugins

    Un tipo de componente define lo que los usuarios pueden editar; un bloque lo hace arrastrable. Son dos registros, no uno.

    Añadir bloques, componentes y pluginsjs
    // A component type owns its markup and the traits your users can edit.
    editor.Components.addType('cta', {
      model: {
        defaults: {
          tagName: 'a',
          attributes: { class: 'cta', href: '#' },
          components: 'Get started',
          traits: [
            { name: 'href', type: 'text', label: 'Link' },
            { name: 'title', type: 'text', label: 'Title' },
          ],
        },
      },
    });
    
    // A block is what makes that type draggable from the panel — a separate,
    // explicit registration, not something the type gives you for free.
    editor.Blocks.add('cta-block', {
      label: 'CTA',
      category: 'Basic',
      content: { type: 'cta' },
    });
  4. 04 — Conexión

    Conecta almacenamiento, usuarios y publicación

    El adaptador de almacenamiento es donde el editor se detiene y comienza tu producto.

    Conecta almacenamiento, usuarios y publicaciónjs
    // Your backend, your schema, your auth. GrapesJS calls load() and store();
    // everything inside them is yours.
    editor.Storage.add('your-backend', {
      async load() {
        const res = await fetch(`/api/pages/${pageId}`, { credentials: 'include' });
        return res.ok ? res.json() : {};
      },
      async store(data) {
        await fetch(`/api/pages/${pageId}`, {
          method: 'PUT',
          credentials: 'include',
          headers: { 'Content-Type': 'application/json' },
          body: JSON.stringify(data),
        });
        return data;
      },
    });
    
    // Publishing is your workflow, not the editor's. getHtml()/getCss() give you
    // the output; what happens to it is a decision only your product can make.
    editor.Commands.add('publish-page', {
      run: (ed) => ({ html: ed.getHtml(), css: ed.getCss() }),
    });

Verificado contra el 0.23.6 de GrapesJS en 2026-09-03.

Eso es todo el aspecto: instalar, montar, extender, conectar. Todo lo que va después del paso 04 — autenticación, facturación, versiones, dominios — es tu aplicación, y nada de eso lo decide el editor.

Pruébalo

El Editor, Running

Abrir pantalla completa

La demo del proyecto — editor central, paneles por defecto, nada comprado.

grapesjs.com/demo.htmlGratis

Carga una demo de terceros en un iframe. Nada carga hasta que haces clic.

Ecosistema

Extiende tu creador de páginas de código abierto

Empieza con un núcleo de editor de código abierto. Añade solo la funcionalidad que tu producto necesita — y construye el resto tú mismo, donde realmente sea tu diferencia.

Pilas seleccionadas

Tres puntos de partida

No un paquete — tres conjuntos que cubren el primer requisito real en cada una de las tres construcciones comunes. Cada elemento es un listado en vivo, y cada uno de ellos es opcional.

Los precios se leen en directo desde el catálogo.

Extiende, no cambies

¿Te falta alguna función? Extiende el editor.

La mayoría de las conclusiones de "GrapesJS no puede hacer X" son realmente "el paquete base no incluye X". Son problemas diferentes, y solo uno de ellos requiere un editor diferente.

No cambies el editor solo porque falta una función. Extiéndelo.

Coste total

¿Cuánto cuesta realmente un creador de páginas de código abierto?

El código abierto cambia la economía de un constructor de páginas. No elimina la ingeniería, y cualquier página que te diga lo contrario está vendiendo algo. Esto es lo que aún posees en cada ruta.

Ruta A

Construye todo tú mismo

Tú posees:

  • Arquitectura del editor
  • Modelo de lienzo y componentes
  • edición de la experiencia de usuario
  • todo el producto encima
  • Pruebas
  • Mantenimiento
  • todas las características futuras

Control total y el camino más largo para llegar a un editor en funcionamiento. Solo merece la pena cuando el propio editor es el diferenciador de tu producto.

Ruta B

Empieza con GrapesJS

Sigues construyendo:

  • Tu solicitud
  • Tu backend
  • Almacenamiento y versiones
  • Edición
  • Funcionalidad específica de producto
  • Actualizaciones y alojamiento

La base de edición visual ya existe. Todo lo anterior sigue siendo tuyo para construir — esta lista es más corta que la de Ruta A, no está vacía.

Ruta C

Extender con plugins

Sigues construyendo:

  • Tu solicitud
  • Tu backend
  • Las partes que realmente son tu producto
  • Integración y actualización de lo que instalas

Comprar un conjunto de bloques o un adaptador de almacenamiento elimina una tarea, no una dependencia. Cada uno es código en el que ahora confías y tienes que seguir funcionando.

Publicamos deliberadamente una cifra sin dinero por "construir un creador de páginas desde cero". No existe un referente público creíble para ello, la respuesta honesta depende totalmente de tu equipo y alcance, y un número inventado sería lo menos fiable en esta página. Cuenta las superficies anteriores en su lugar: son lo que realmente estás intercambiando.

El otro comercio

Código abierto vs constructores de páginas alojadas

Esto es un intercambio, no un ranking. El código abierto te da más control; alojado te da menos para operar. Ambas columnas contienen cosas que te importarán.

DimensiónCódigo abiertoPresentado
Control de versionesA tu disposición para leer, parche y bifurcaciónLimitado a lo que la plataforma exponga
AutoalojamientoNormalmente es posibleNormalmente no
Ubicación de datosTu infraestructuraEl proveedor
Personalización de la interfazAlto — la concha es tuyaDepende de la plataforma
Dependencia del proveedorInferiorMás alto
MantenimientoTu responsabilidadEl proveedor
InfraestructuraTu responsabilidadEl proveedor
ExtensibilidadDepende de la API de plugins del proyectoDepende de los puntos de extensión de la plataforma
Hora de un editor en activoTrabajo de integración antes de que cualquier cosa sea utilizableUtilizable antes de que hayas escrito cualquier código

El código abierto te da más control, pero también asumes la responsabilidad de la infraestructura y el mantenimiento. Si nadie en tu equipo quiere esa responsabilidad, la respuesta honesta es alojada.

Preguntas frecuentes

Preguntas sobre el creador de páginas de código abierto

¿Qué es un creador de páginas de código abierto?

Un editor visual de páginas cuyo código fuente se publica bajo una licencia de código abierto, para que puedas leerlo, ejecutarlo en tu propia infraestructura, modificarlo y construir un producto encima. Puede ser una biblioteca que incrustes en tu aplicación, o una aplicación completa de creación de sitios web que despliegues — son cosas muy diferentes que comparten la misma etiqueta.

¿Cuál es el mejor creador de páginas de código abierto?

No hay un mejor — hay uno mejor para tus necesidades. Si vas a integrar un editor en tu propia aplicación y quieres salida HTML/CSS, GrapesJS encaja. Si las páginas son árboles de tus componentes React, un editor React primero encaja mejor. Si quieres una aplicación terminada para crear sitios web en lugar de una base, un creador web desplegable será más rápido. Responde primero "¿biblioteca o aplicación?" elimina más opciones que cualquier comparación de funcionalidades.

¿Es GrapesJS de código abierto?

Sí. El paquete core GrapesJS se publica bajo la licencia BSD-3-Clause, y el envoltorio oficial de @grapesjs/react bajo MIT. Ambas son licencias permisivas. Ten en cuenta que el núcleo GrapesJS no es MIT, a pesar de lo que dicen muchos artículos comparativos.

¿Puedo autoalojar GrapesJS?

Sí. GrapesJS es una biblioteca JavaScript del lado del cliente que instalas desde npm y combinas con tu aplicación. No hay servicio que llamar ni cuenta que crear, así que se ejecuta donde esté tu frontend.

¿Puedo usar un creador de páginas de código abierto para un SaaS?

Sí, y es uno de los usos más comunes. BSD-3-Clause es una licencia permisiva que permite el uso comercial y propietario siempre que mantengas el aviso de derechos de autor y el texto de la licencia en tu distribución. Revisa la licencia de cada proyecto individualmente antes de comprometerte — algunos creadores de páginas de código abierto usan AGPL-3.0, que conlleva obligaciones que importan específicamente para productos alojados.

¿Puedo personalizar la interfaz del editor?

Sí. Los paneles, botones, sectores de estilo y la shell circundante son configurables, y varios editores publicados reemplazan completamente el diseño por defecto mientras ejecutan el mismo núcleo. Si quieres que el editor se parezca a tu producto en lugar de a GrapesJS, ese es un resultado soportado, no un hack.

¿Puedo conectar el creador de páginas a mi propia base de datos?

Sí. GrapesJS tiene una API de almacenamiento donde registras un adaptador con funciones de carga y almacenamiento. Lo que ocurre dentro de ellas — qué endpoint, qué autenticación, qué esquema — es totalmente tuyo, así que los datos del proyecto van a tu propia base de datos en lugar de a la de nadie más.

¿Puedo crear un creador de páginas React con GrapesJS?

Sí. El wrapper oficial de @grapesjs/react monta el editor como un componente React, así que está dentro de tu árbol de componentes con tu estado y enrutamiento alrededor de él. El núcleo del editor en sí sigue siendo agnóstico respecto al framework: el wrapper es una capa de integración, no una reescritura.

¿Puedo crear un creador de páginas web con GrapesJS?

Sí, con una salvedad que merece la pena dejar claro. La edición multipágina es un módulo central, así que la parte de edición está cubierta. Todo lo que la convierte en un creador de sitios web en lugar de un editor de páginas — enrutamiento, dominios, alojamiento, despliegues, cuentas de usuario — es código de aplicación que escribes tú. GrapesJS te da el editor, no la plataforma.

¿Puedo crear un generador de correo electrónico con GrapesJS?

Sí, usando plugins. La salida de correo no está en el paquete base: MJML y los presets del boletín añaden los bloques específicos de correo y la cadena de salida que sobrevive a los clientes de correo reales. Es una capacidad real, usada en producción, pero está instalada, no es algo que se obtenga por defecto.

¿GrapesJS es gratuito para proyectos comerciales?

El paquete base es BSD-3-Clause y el envoltorio React es MIT, y ambos permiten el uso comercial, incluso en productos de código cerrado, siempre que se conserven los avisos de derechos de autor y licencia. Esto es un resumen del texto de la licencia, no asesoramiento legal — lee el archivo LICENSE en el repositorio y pregunta a tu propio asesor si la respuesta es relevante para un contrato.

¿Cuál es la diferencia entre GrapesJS y Webstudio?

Se sitúan en categorías diferentes. GrapesJS es una biblioteca BSD-3-Clause que instalas e incrustas dentro de tu propia aplicación, donde suministras la interfaz, el backend y la publicación. Webstudio es un constructor visual de sitios web AGPL-3.0 — una aplicación independiente, con una oferta alojada. Las licencias también difieren en un aspecto que importa para productos alojados: AGPL-3.0 conlleva obligaciones de disponibilidad de código fuente que BSD-3-Clause no tiene.

¿Cuál es la diferencia entre GrapesJS y Puck?

Modelo de datos y framework. Puck es un editor React con licencia MIT: una página es un árbol JSON de tus componentes React, renderizado por React. GrapesJS es independiente del framework y funciona con salida HTML y CSS, lo que se adapta a productos que sirven o exportan marcado. Si tus páginas son componentes React, Puck se mapea a ellas de forma más directa; si son páginas web, GrapesJS lo hace.

¿Cuál es la diferencia entre un creador de páginas de código abierto y uno alojado?

Quién lleva el trabajo. Con el código abierto obtienes el código fuente, el autoalojamiento, tu propia ubicación de datos y un control profundo de la interfaz — y te encargas del alojamiento, las actualizaciones y el mantenimiento. Con un constructor alojado, el proveedor lleva todo eso, y aceptas sus precios, hoja de ruta y límites de personalización. Ninguno es universalmente mejor; depende de si operar el editor es un coste que quieres.

¿Necesito plugins GJS.Market?

No. GrapesJS es totalmente utilizable sin comprar nada, y muchos editores de producción están construidos completamente sobre el núcleo más el código que escribió el equipo. Los plugins merecen la pena cuando una funcionalidad no es el diferenciador de tu producto — un preajuste de email, un conjunto de bloques, un adaptador de almacenamiento — y no merecen la pena cuando lo es.

¿Puedo crear bloques y componentes personalizados?

Sí, y es la forma normal de usar el editor. Registras un tipo de componente que define el marcado y los rasgos que los usuarios pueden editar, luego registras un bloque que lo hace arrastrable desde el panel. Son dos registros separados, lo cual merece la pena saberlo antes de preguntarte por qué tu nuevo componente no está en el panel.

Empieza

Crea tu propio constructor de páginas de código abierto

Empieza con GrapesJS, mantén el control de tu aplicación y amplía el editor con la funcionalidad que tu producto necesita.

Empieza a construir

Prueba GrapesJS

Carga un editor real en el navegador, luego instálalo y móntalo en tu propia app.

Prueba GrapesJS
Ampliación

Explora los plugins

Bloques, adaptadores de almacenamiento, shells React y preajustes de correo electrónico — instalados solo donde te ahorran trabajo real.

Explora los plugins GJS.Market
Comparar

Comparar creadores de páginas

Observa cómo difieren las opciones de código abierto antes de comprometer una arquitectura en una de ellas.

Comparar creadores de páginas

Posee al editor. Posee los datos. Posee el producto.