2.0.0 • Published 5 years ago

laravel-mix-bundle v2.0.0

Weekly downloads
7
License
MIT
Repository
github
Last release
5 years ago

npm version npm downloads license

Laravel Mix Bundle

This extension provides zero configuration Webpack asset bundling support to your Mix (v2.1 and up) builds.

This extension will:

  • Install packages mentionned in package.json as 'bundledDependencies'
  • Generate in your public folder a unique js (+ manifest.js by webpack) and a unique css file containing all js & css referenced from the specified entry source file, recursively:
    • Local project ressources
    • External, npm managed ressources
  • Copy in your public folder all referenced assets (fonts, images) from the specified entry source file, recursively:
    • Local project ressources
    • External, npm managed ressources

All folders are taken from standard mix config.

In production mode, js and css files will be minified.

Usage

First, install the extension.

$ npm install laravel-mix-bundle --save-dev

Then, require it within your webpack.mix.js file, like so:

let mix = require('laravel-mix');

require('laravel-mix-bundle');

mix.setPublicPath('public')
    .bundle({
        sourceFile : "resources/assets/index.js",
        outputName : "my-app"
    });

(If outputName is empty, takes name from current package.json)

And you're done! Compile everything down with npm run dev.

Bundled files are generated in temporary .build folder, then published in css-js-fonts-images folders (respectively), in dist folder.

Npm packages

In your package.json file, you can now add following references:

"style": "public/css/my-app.css",
"module": "public/js/my-app",
"unpkg": "public/js/my-app.js",

(You can change 'public' folder by 'dist' folder for module bundling)

Blade

In your blade template, you can now include generated files:

  • Unique css file :
<link rel="stylesheet" href="{{ asset('css/my-app.css') }}">
  • Unique js files & manifest :
 <script src="{{ asset('js/manifest.js') }}"></script>
 <script src="{{ asset('js/my-app.js') }}"></script>
2.0.0

5 years ago

2.0.0-beta.3

5 years ago

1.3.0-beta.10

5 years ago

1.2.2-ci.6

5 years ago

1.2.2

5 years ago

1.2.1

5 years ago

1.1.4

5 years ago

1.1.2

5 years ago

1.1.1

5 years ago

1.1.0

5 years ago

1.0.4

5 years ago

1.0.3

5 years ago