Skip to content

omatech/editora-schema-builder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Editora Schema Builder

Package Laravel reutilizable para editar visualmente editoradatabase.php en proyectos con Editora.

Qué incluye

  • editor visual del schema
  • validación de referencias
  • guardado de borrador
  • guardado y regeneración de Editora
  • histórico básico de versiones

Requisitos

  • PHP ^8.1
  • Laravel ^10
  • proyecto con Editora
  • un archivo config/editoradatabase.php
  • acceso de escritura a storage/

Instalación

Opción 1. Desarrollo local con path repository

Ú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-config

Opción 2. Instalación desde repositorio privado Git

Recomendada para usar el package de forma estable en proyectos reales.

Opción SSH

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-config

Opción HTTPS

Si 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-config

Autenticación GitHub

Si 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.

Configuración

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',
];

Opciones de configuración

enabled

Activa o desactiva la herramienta.

'enabled' => true,

require_local_or_debug

Si está a true, la herramienta solo estará accesible en entorno local o con APP_DEBUG=true.

'require_local_or_debug' => true,

route_prefix

Ruta base del builder.

'route_prefix' => 'tools/editora-schema-builder',

Con esa configuración, la URL será:

/tools/editora-schema-builder

schema_path

Ruta al archivo editoradatabase.php.

'schema_path' => config_path('editoradatabase.php'),

history_path

Ruta donde se guardan los snapshots del histórico.

'history_path' => storage_path('app/editora-schema-builder-history'),

regenerate_command

Comando que se ejecuta cuando usas Guardar y regenerar.

'regenerate_command' => 'editora:create',

Uso

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

Histórico

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

Notas

  • Guardar borrador no genera una nueva entrada en histórico
  • Guardar y regenerar sí 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

Qué versionar en un proyecto consumidor

Sí conviene subir:

  • composer.json
  • composer.lock
  • config/editora-schema-builder.php si lo has publicado y personalizado

No conviene subir:

  • storage/app/editora-schema-builder-history/*

Desarrollo

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.

Ruta por defecto

/tools/editora-schema-builder

About

Herramienta para editar visualmente `editoradatabase.php` en proyectos con Editora.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors