caimari / musedock
MuseDock CMS - A modular, multi-tenant content management system with AI integration.
Installs: 3
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 0
Forks: 0
Open Issues: 0
Type:project
pkg:composer/caimari/musedock
Requires
- php: ^8.0
- ext-json: *
- ext-mbstring: *
- ext-pdo: *
- eftec/bladeone: ^4.18
- league/flysystem: ^3.29
- league/flysystem-aws-s3-v3: ^3.29
- league/flysystem-local: ^3.29
- mollie/mollie-api-php: ^3.6
- nesbot/carbon: ^3.9
- nyholm/psr7: ^1.8
- openai-php/client: ^0.10.3
- stripe/stripe-php: ^18.2
- symfony/http-client: ^6.4
Requires (Dev)
- phpstan/phpstan: ^1.10
- phpunit/phpunit: ^10.0
This package is auto-updated.
Last update: 2025-12-08 18:26:17 UTC
README
Español
Sistema de Gestión de Contenidos moderno, modular y multi-tenant construido con PHP 8+ y un framework MVC personalizado.
Características
- Arquitectura Multi-Tenant - Aloja múltiples sitios web desde una sola instalación
- Sistema Modular - Habilita/deshabilita funcionalidades según necesites (Blog, Galerías, Formularios, etc.)
- Integración con IA - Soporte integrado para generación de contenido con IA (OpenAI, Anthropic)
- Panel de Administración Moderno - Dashboard limpio y responsive con Bootstrap 5
- Sistema de Temas - Motor de plantillas Blade con temas personalizables
- Gestor de Medios - Gestión avanzada de archivos con soporte para almacenamiento en la nube (S3, R2)
- Control de Acceso Basado en Roles - Sistema de permisos granular
- Optimizado para SEO - Meta tags, slugs, sitemaps
- Multi-Idioma - Soporte completo de internacionalización
- Seguridad Primero - Protección CSRF, limitación de peticiones, 2FA, WAF
Requisitos
- PHP 8.0 o superior
- MySQL 5.7+ / MariaDB 10.3+ o PostgreSQL 12+
- Composer
- Extensiones: pdo, pdo_mysql, json, mbstring, openssl, curl, fileinfo, gd
Instalación
Opción 1: Instalación por FTP (Hosting Compartido - Sin SSH)
Perfecto para hosting compartido sin acceso SSH.
-
Descargar la versión de producción:
- Ve a GitHub Releases
- Descarga
musedock-vX.X.X-complete.zip(incluye todas las dependencias)
-
Extraer y subir:
- Extrae el ZIP en tu ordenador
- Sube todos los archivos vía FTP a tu hosting
-
Configurar document root:
- ⚠️ IMPORTANTE: Apunta tu servidor web a la carpeta
public/ - Ejemplo:
public_html/musedock/public
- ⚠️ IMPORTANTE: Apunta tu servidor web a la carpeta
-
Abrir navegador:
http://tu-dominio.com/install/ -
Seguir el asistente - Base de datos, cuenta admin, ¡listo!
📖 Guía Detallada de Instalación FTP
Opción 2: Instalador Web (VPS/Dedicado - Con SSH)
-
Clonar e instalar:
git clone https://github.com/caimari/musedock.git cd musedock composer install --no-dev --optimize-autoloader -
Abrir navegador:
http://tu-dominio.com/install/ -
Seguir el asistente para configurar base de datos y cuenta de administrador.
Opción 3: Composer Create-Project (Recomendado para Desarrolladores)
La forma más rápida de crear un nuevo proyecto:
composer create-project caimari/musedock mi-proyecto
cd mi-proyecto
Luego abre http://tu-dominio.com/install/ en tu navegador.
¿Qué hace automáticamente?
- ✅ Descarga MuseDock CMS y todas las dependencias
- ✅ Crea el archivo
.envdesde.env.example - ✅ Configura el autoloader optimizado
- ✅ Te muestra las instrucciones para el siguiente paso
Opción 4: Instalación Manual CLI
-
Clonar e instalar dependencias:
git clone https://github.com/caimari/musedock.git cd musedock composer install --no-dev -
Copiar archivo de entorno:
cp .env.example .env
-
Editar
.envcon tus credenciales de base de datos:DB_HOST=localhost DB_NAME=tu_base_datos DB_USER=tu_usuario DB_PASS=tu_contraseña
-
Ejecutar migraciones y seeders:
php migrate --seed
-
Crear tu usuario administrador vía base de datos o usar el seeder.
Configuración
Variables de Entorno
Opciones clave de configuración en .env:
| Variable | Descripción | Por Defecto |
|---|---|---|
APP_ENV |
Entorno (production/development) | production |
APP_DEBUG |
Habilitar modo debug | false |
APP_URL |
URL de tu sitio | http://localhost |
DB_DRIVER |
Driver de base de datos (mysql/pgsql) | mysql |
MULTI_TENANT_ENABLED |
Habilitar multi-tenancy | false |
REDIS_ENABLED |
Habilitar caché Redis | false |
Estructura de Directorios
musedock/
├── config/ # Archivos de configuración
├── core/ # Clases del framework core
│ ├── Controllers/ # Controladores base
│ ├── Middlewares/ # Middlewares de peticiones
│ ├── Models/ # Modelos base
│ └── Views/ # Vistas del panel admin
├── database/
│ ├── migrations/ # Migraciones de base de datos
│ └── seeders/ # Seeders de datos
├── install/ # Instalador web
├── modules/ # Módulos instalables
├── public/ # Raíz web (APUNTA AQUÍ)
│ └── assets/ # CSS, JS, imágenes
├── routes/ # Definiciones de rutas
├── storage/ # Logs, caché, uploads
└── themes/ # Temas del frontend
Módulos Disponibles
| Módulo | Descripción |
|---|---|
blog |
Blog completo con categorías y etiquetas |
media-manager |
Gestión de archivos e imágenes |
image-gallery |
Galerías de fotos |
custom-forms |
Constructor de formularios |
react-sliders |
Sliders de imágenes con React |
Comandos CLI
# Migraciones php migrate # Ejecutar migraciones pendientes php migrate status # Verificar estado de migraciones php migrate --seed # Ejecutar migraciones con seeders php migrate rollback # Revertir último lote php migrate fresh --seed # Instalación limpia con seeders # Generar migraciones desde base de datos existente php generate-migrations # Generar todas las migraciones faltantes php generate-migrations --list # Listar tablas sin migraciones
Panel de Administración
Accede al panel de administración en:
- Superadmin:
https://tu-dominio.com/musedock/ - Admin del Tenant:
https://tu-dominio.com/admin/
Seguridad
MuseDock incluye características de seguridad integradas:
- Protección CSRF en todos los formularios
- Limitación de peticiones para intentos de login
- Autenticación de dos factores (TOTP)
- Hash de contraseñas con bcrypt
- Prevención de inyección SQL (PDO prepared statements)
- Headers de protección XSS
- Content Security Policy
- Lista negra de IPs
Instalación vía Composer (Packagist)
composer create-project caimari/musedock mi-sitio
Licencia
Este proyecto está licenciado bajo la Licencia MIT - ver el archivo LICENSE para más detalles.
Autor
Antoni Caimari Caldes
- Sitio web: screenart.es
- GitHub: @caimari
Soporte
- Documentación: musedock.org
- Issues: GitHub Issues
Preguntas Frecuentes (FAQ)
¿Cómo instalo con Composer?
composer create-project caimari/musedock nombre-proyecto cd nombre-proyecto # Visita http://tu-dominio.com/install/
¿Necesito acceso SSH para instalar?
No. Puedes usar la Opción 1 (FTP) descargando el release completo desde GitHub que ya incluye todas las dependencias.
¿Cómo actualizo MuseDock?
Con Composer:
composer update caimari/musedock
O descarga el nuevo release y reemplaza los archivos (respetando .env y storage/).
¿Puedo usar MuseDock en hosting compartido?
Sí, usa la instalación por FTP. Solo necesitas:
- PHP 8.0+
- MySQL/MariaDB
- Configurar el document root a la carpeta
public/
¿Dónde está la documentación completa?
Visita musedock.org/docs (próximamente).
¡Construye algo increíble con MuseDock CMS! 🚀