Un paquete para Laravel que permite exponer la versión de una aplicación basada en el commit de Git, de forma segura para producción y totalmente compatible con config:cache.
✅ Git se utiliza solo en build-time
❌ Nunca se ejecuta Git en runtime
- ✅ Versión basada en el commit actual
- ✅ Seguro para producción (no depende de
.git) - ✅ Compatible con
config:cache - ✅ Ideal para CI/CD, Docker, Forge y Vapor
- ✅ Incluye comandos Artisan
- ✅ Facade listo para usar
Instala el paquete vía Composer:
composer require ezermeno/fmx-version-appLaravel registrará automáticamente el service provider mediante auto‑discovery.
⚙️ Publicar configuración (opcional)
php artisan vendor:publish --tag=configEsto publicará el archivo de configuración:
config/fmx-version-app.php🚀 Generar la versión desde Git (build-time)
Este comando obtiene el commit actual de Git y actualiza la versión configurada de la aplicación.
php artisan fmxvapp:update
Uso recomendado en CI/CD
php artisan fmxvapp:update
php artisan config:clear
php artisan config:cache
🖥️ Ver la versión por consola
php artisan fmxvapp:version
Ejemplo de salida:
Version: a3f91c2
Build at: 2026-04-30T05:41:00Z
🧩 Uso dentro de la aplicación
Mediante Facade
use Ezermeno\FmxVersionApp\Facades\FmxVersionApp;
FmxVersionApp::version();
FmxVersionApp::buildAt();
FmxVersionApp::toArray();
Resultado:
[
'version' => 'a3f91c2',
'build_at' => '2026-04-30T05:41:00Z',
];
Desde la configuración
config('fmx-version-app.version');
config('fmx-version-app.build_at');
📡 Ejemplo de endpoint API
use Ezermeno\FmxVersionApp\Facades\FmxVersionApp;
Route::get('/version', function () {
return response()->json(FmxVersionApp::toArray());
});
Respuesta:
{
"version": "a3f91c2",
"build_at": "2026-04-30T05:41:00Z"
}