LaravelPackages.net
Acme Inc.
Toggle sidebar
elfsundae/laravel-asset-version

Laravel static assets versioning via query string: `app.js` → `app.js?d41d8cd98f`

151
0
1.0.0
About elfsundae/laravel-asset-version

elfsundae/laravel-asset-version is a Laravel package for laravel static assets versioning via query string: `app.js` → `app.js?d41d8cd98f`. It currently has 0 GitHub stars and 151 downloads on Packagist (latest version 1.0.0). Install it with composer require elfsundae/laravel-asset-version. Discover more Laravel packages by elfsundae or browse all Laravel packages to compare alternatives.

Last updated

Laravel Asset Version

Latest Version on Packagist Software License StyleCI

Laravel static assets versioning via query string: app.jsapp.js?d41d8cd98f.

Installation

$ composer require elfsundae/laravel-asset-version

For Lumen or earlier Laravel than v5.5, you need to register the service provider manually:

ElfSundae\Laravel\AssetVersion\AssetVersionServiceProvider::class,

Configuration

First you need to create an asset version configuration file located at config/asset-version.php , filled with assets paths. Or you may run the asset-version:update artisan command to create this file:

<?php

return [
    'css/app.css',
    'js/app.js',
    'images/foo.png',
];

Then you can run the asset-version:update command to update the asset version configuration:

$ php artisan asset-version:update

Now the configuration file might be:

<?php

return array (
  'css/app.css' => '3ede8f2085',
  'js/app.js' => '2eaf111399',
  'images/foo.png' => 'd41d8cd98f',
);

:warning: You need to run the asset-version:update command every time you changed any asset content. You may call this command in your assets build script, e.g. Laravel Elixir:

elixir((mix) => {
    mix.sass('app.scss')
       .webpack('app.js')
       .exec('php artisan asset-version:update');
});

For Laravel Elixir, you can use laravel-elixir-asset-version NPM package to easily execute update.

Usage

You can get the versioned asset path using the asset_path() helper function:

asset_path('css/app.css');  // "/css/app.css?3ede8f2085"

<link href="{{ asset_path('js/app.js') }}" rel="stylesheet">

License

This package is open-sourced software licensed under the MIT License.

Comments