Un sitio web completamente personalizado con CMS para una empresa BTP de Tánger - un panel de administración Livewire, editor de contenido basado en bloques, gestión bilingüe, un blog con herramientas SEO completas y una capa de entrega de contenido con caché.
Descripción general
Citabic es una empresa BTP de Tánger (ingeniería civil, construcción, inmobiliaria) que necesitaba más que un sitio estático - necesitaban poder gestionar su contenido de forma independiente, publicar entradas de blog, actualizar referencias de proyectos y controlar cada texto tanto en francés como en inglés sin involucrar a un desarrollador cada vez.
El resultado es una aplicación completa en Laravel 12 + Livewire con un panel de administración personalizado, un sistema de gestión de contenido bilingüe, una plataforma de blog con herramientas SEO completas, un portafolio de referencias con páginas de detalle y una capa de entrega de contenido con caché que mantiene el sitio público rápido.
Objetivo
Dar al cliente control total - cada sección, cada texto, cada imagen gestionable desde un panel de administración sin tocar código
Ofrecer una experiencia bilingüe completa: los administradores introducen contenido en FR y EN, el contenido se sirve por locale automáticamente
Habilitar el marketing de contenidos profesional a través de una plataforma de blog completa con edición basada en bloques y un kit completo de SEO
Mantener el sitio público rápido mediante una capa de caché por locale con TTL de 6 horas - para que las consultas a la base de datos se amorticen entre miles de visitas
Mi rol
Diseño y frontend
Diseñé y construí el sitio público completo en Laravel Blade + Tailwind CSS v4 - héroe con vídeo, servicios, carrusel de valores, referencias, blog y contacto - todo responsivo.
Panel de administración Livewire
Construí un panel CMS de administración completo con Livewire v4 - más de 15 secciones de gestión que cubren cada pieza de contenido editable del sitio.
Sistema de contenido bilingüe
Diseñé un modelo de contenido por sección/clave/idioma (SectionContent) que permite a los administradores gestionar las versiones FR y EN de cada bloque de texto de forma independiente.
Plataforma de blog y SEO
Construí un blog completo con un editor basado en bloques (bloques de héroe, texto e imagen), metadatos SEO completos (OG, Twitter cards, schema, robots, canonical), categorías, etiquetas, comentarios y tiempo de lectura.
Caché y rendimiento
Implementé un servicio GuestPageCache con caché por locale de 6 horas a través de Laravel Cache - los datos de la página se calculan una sola vez y se sirven desde caché para todas las solicitudes posteriores.
Notificaciones y formularios
Construí un formulario de contacto categorizado con notificación por email al enviar, y notificaciones de comentarios del blog - ambos a través de Laravel Notifications.
Stack tecnológico
Funciones principales
Panel de administración
Cada pieza de contenido del sitio público es gestionable desde el panel de administración - el cliente puede actualizar cualquier cosa sin un desarrollador.
Capturas de pantalla

Admin Dashboard

Block Editor

Public Site (FR)
Arquitectura
Cada página pública está respaldada por un CitabicContentService que reúne todos los datos necesarios - perfil, dominios, secciones, misiones, certificaciones - y almacena el resultado en caché por locale durante 6 horas. El panel de administración está construido íntegramente con Livewire v4, manteniendo la UI reactiva sin JavaScript personalizado.
Conclusiones clave
El CMS es el producto
Para un sitio empresarial orientado al contenido, la experiencia del administrador es tan importante como la cara pública. Un cliente que puede actualizar su propio contenido es un cliente que permanece comprometido con su sitio.
Caché en la capa de servicio, no en la vista
Almacenar en caché los payloads completos de datos de página en CitabicContentService es más potente que el caché a nivel de vista - funciona independientemente de cómo se renderice la vista.
El bilingüismo es una decisión de arquitectura
Añadir el idioma como campo de primer nivel en cada modelo de contenido desde el primer día - en lugar de añadirlo después - hace que la gestión bilingüe sea limpia y eficiente.
Los editores de bloques merecen la inversión inicial
Un modelo de contenido basado en bloques en JSON da al cliente la flexibilidad de construir entradas y páginas de referencias ricas sin necesitar a un desarrollador para cada cambio de contenido.
Trabaja conmigo
Un buen CMS no es solo un panel de administración - es el modelo de contenido correcto para tu negocio. Te ayudo a determinar qué debe ser editable, cómo debe estructurarse y lo construyo para que tu equipo sea el dueño.