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

1.0.0 2017-11-23 16:06 UTC

This package is auto-updated.

Last update: 2020-08-30 01:46:45 UTC


Latest Version on Packagist Software License StyleCI

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


$ composer require elfsundae/laravel-asset-version

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



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:


return [

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:


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

⚠️ 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) => {
       .exec('php artisan asset-version:update');

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


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


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