Un CMS sin límites creado para ingenieros de diseño
Un CMS totalmente ampliable creado con Laravel y Filament. Tan personalizable y único como quieras hacerlo.
Características de un vistazo...
- 40+
- Bloques incluidos
- 6
- Plantillas
- 5
- Skins
- 32
- Herramientas MCP
Creado para ingenieros de diseño
Los bloques son clases PHP y vistas Blade, y cada color y cada medida es un token de diseño declarado una sola vez. El modelo de contenido es código en lugar de una pantalla de configuración, de modo que quienes construyen el sitio deciden cómo se representa y qué se le ofrece a un editor.
Servidor MCP para agentes de IA incluido
El paquete incluye un servidor MCP, accesible por stdio o mediante un endpoint HTTP autenticado. Un agente redacta páginas, reordena bloques y publica a través de los mismos servicios de dominio que utiliza el panel, por lo que se aplican las mismas validaciones y permisos de bloque, y cada escritura queda registrada en el historial de versiones a nombre del usuario cuyo token la realizó.
Totalmente personalizable y ampliable
El marcado de cualquier bloque se sustituye colocando un archivo en tu propio directorio de vistas, sin ninguna entrada de configuración y sin paso de publicación. La clase que hay detrás de la clave de un bloque puede reemplazarse, y tus propios tipos de contenido y plantillas conviven con los incluidos. El contenido ya almacenado sigue funcionando durante todo el proceso.
¡Empieza por la guía para desarrolladores!
Instalación, el modelo de datos, creación de bloques y plantillas, regiones, skins, caché, búsqueda y el servidor MCP.
Preguntas
¿Puedo crear mi propio tema?
¡Por supuesto! Puedes crear plantillas, bloques y skins personalizados con componentes Blade de Laravel y CSS estándar. Usamos detección automática, así que en cuanto cargues tu código, tu creación está lista para usarse.
¿Puedo cambiar el marcado de los componentes incluidos?
Sí, sin bifurcar el paquete. Crear resources/views/vendor/cms/blocks/hero.blade.php sustituye la plantilla Hero, porque Laravel resuelve ese directorio antes que el paquete. No hay entrada de configuración ni paso de publicación. La clase que hay detrás de la clave de un bloque puede reemplazarse del mismo modo, y el contenido almacenado sigue funcionando.
¿Qué les ocurre a las páginas antiguas cuando cambia un bloque?
Se siguen representando. Las versiones son inmutables, así que un bloque que añade o renombra un campo migra la estructura almacenada al leerla en cast(), y no mediante una migración de base de datos. Una página guardada hace un año se representa con el código de hoy.
¿Cómo se aplican los estilos al front end?
Las vistas llevan únicamente clases semánticas cms-*, con las utilidades detrás de @apply en una sola hoja de estilos. Tailwind nunca tiene que analizar las vistas del paquete, y una regla escrita después de la importación gana por orden de origen, así que cambiar los estilos rara vez implica bifurcar el marcado.
¿Cómo se gestiona la caché de páginas?
Las páginas representadas se almacenan en caché para obtener el mejor rendimiento. Un bloque se declara no cacheable cuando su salida depende de la petición o de datos ajenos a su propia versión, y eso se propaga a todas las páginas que lo incrustan mediante un snippet. Publicar, mover o eliminar contenido invalida la caché de esa página.