creacoon/laravel-app-versioning

A Laravel package for managing application versioning

1.0.1 2025-09-17 11:38 UTC

This package is auto-updated.

Last update: 2025-09-17 11:44:42 UTC


README

A Laravel package for managing application versioning.

Installation

You can install the package via composer:

composer require Creacoon/laravel-app-versioning

After installing, publish the configuration file:

php artisan vendor:publish --provider="Creacoon\AppVersioning\VersionManagerServiceProvider" --tag="config"

Usage

Getting the current version

// Using the facade
use Creacoon\AppVersioning\Facades\VersionManager;

$version = VersionManager::getCurrentVersion();

// Using the command
php artisan version

Setting a new version

// Using the facade
use Creacoon\AppVersioning\Facades\VersionManager;

VersionManager::setVersion('1.2.3');

// Using the command
php artisan version 1.2.3

The package will:

  1. Update the version in your config file
  2. Update the runtime configuration
  3. Update your CHANGELOG.md file
  4. Create a git commit with the changes
  5. Create a git tag for the new version

Configuration

You can customize the package behavior by modifying the config/version.php file:

return [
    'config_key' => 'app.version',
    'version_key' => 'version',
    'config_path' => config_path('app.php'),
    'changelog_path' => base_path('CHANGELOG.md'),
    'unreleased_pattern' => '## [Unreleased]',
    'commit_message' => 'chg: dev: Version set to',
    'files_to_commit' => [
        'CHANGELOG.md',
        'config/app.php'
    ],
];

License

The MIT License (MIT). Please see License File for more information.