Package Laravel reutilizable para editar visualmente editoradatabase.php en proyectos con Editora.
- editor visual del schema
- validación de referencias
- guardado de borrador
- guardado y regeneración de Editora
- histórico básico de versiones
- PHP
^8.1 - Laravel
^10 - proyecto con Editora
- un archivo
config/editoradatabase.php - acceso de escritura a
storage/
Útil para desarrollo y pruebas rápidas entre proyectos en local.
En el proyecto consumidor, añade en composer.json:
{
"repositories": [
{
"type": "path",
"url": "./packages/omatech/editora-schema-builder",
"options": {
"symlink": true
}
}
],
"require": {
"omatech/editora-schema-builder": "*"
}
}Después:
composer require omatech/editora-schema-builder:*
php artisan vendor:publish --tag=editora-schema-builder-configRecomendada para usar el package de forma estable en proyectos reales.
En el proyecto consumidor, añade en composer.json:
{
"repositories": [
{
"type": "vcs",
"url": "git@github.com:omatech/editora-schema-builder.git"
}
],
"require": {
"omatech/editora-schema-builder": "dev-main"
}
}Después:
composer require omatech/editora-schema-builder:dev-main
php artisan vendor:publish --tag=editora-schema-builder-configSi prefieres usar HTTPS, añade en composer.json:
{
"repositories": [
{
"type": "vcs",
"url": "https://github.com/omatech/editora-schema-builder.git"
}
],
"require": {
"omatech/editora-schema-builder": "dev-main"
}
}Después:
composer require omatech/editora-schema-builder:dev-main
php artisan vendor:publish --tag=editora-schema-builder-configSi el repositorio es privado, Composer puede pedir autenticación para acceder al package.
Opciones habituales:
- token de GitHub
- acceso SSH correctamente configurado en el entorno donde corre Composer
Si Composer pide token al usar HTTPS, es un comportamiento esperado cuando se accede a un repositorio privado.
Al publicar la configuración se crea:
config/editora-schema-builder.php
<?php
return [
'enabled' => true,
'require_local_or_debug' => true,
'route_prefix' => 'tools/editora-schema-builder',
'schema_path' => config_path('editoradatabase.php'),
'history_path' => storage_path('app/editora-schema-builder-history'),
'regenerate_command' => 'editora:create',
];Activa o desactiva la herramienta.
'enabled' => true,Si está a true, la herramienta solo estará accesible en entorno local o con APP_DEBUG=true.
'require_local_or_debug' => true,Ruta base del builder.
'route_prefix' => 'tools/editora-schema-builder',Con esa configuración, la URL será:
/tools/editora-schema-builder
Ruta al archivo editoradatabase.php.
'schema_path' => config_path('editoradatabase.php'),Ruta donde se guardan los snapshots del histórico.
'history_path' => storage_path('app/editora-schema-builder-history'),Comando que se ejecuta cuando usas Guardar y regenerar.
'regenerate_command' => 'editora:create',Una vez instalado, abre:
/tools/editora-schema-builder
Desde ahí puedes:
- navegar por grupos, clases, relaciones y atributos
- editar el schema visualmente
- validar referencias
- guardar un borrador
- guardar y regenerar Editora
- revisar histórico de cambios
- restaurar una versión anterior
El builder guarda snapshots del editoradatabase.php cuando se ejecuta una acción definitiva de regeneración.
Características:
- guarda solo si el archivo cambió realmente
- mantiene un histórico reciente
- muestra diff de cambios
- permite restaurar y regenerar una versión anterior
Guardar borradorno genera una nueva entrada en históricoGuardar y regenerarsí puede generar histórico si el archivo ha cambiado- si una versión histórica coincide exactamente con el archivo actual, no se muestra acción de restauración
Sí conviene subir:
composer.jsoncomposer.lockconfig/editora-schema-builder.phpsi lo has publicado y personalizado
No conviene subir:
storage/app/editora-schema-builder-history/*
Para desarrollo local, la opción path repository es la más rápida.
Para equipos o múltiples proyectos, se recomienda usar un repositorio privado Git y consumir el package con Composer vía vcs.
/tools/editora-schema-builder