NPM package which includes all asset linting and build tools for Pressbooks projects.
npm i -D pressbooks-build-tools
Pressbooks Build Tools includes Laravel Mix, which can be configured and used according to the project's documentation.
Pressbooks Build Tools includes ESLint. Pressbooks' ESLint configuration can be used in your project by adding the following to your ESLint configuration:
"eslintConfig": {
"extends": "./node_modules/pressbooks-build-tools/config/eslint.js"
}
Pressbooks Build Tools includes Stylelint. Pressbooks' Stylelint configuration can be used in your
project by adding the following to your package.json
file:
"stylelint": {
"extends": "./node_modules/pressbooks-build-tools/config/stylelint.js"
}
Version 3.0 of pressbooks-build-tools
includes Laravel Mix 6.0, and as such will require some changes to build scripts wherever it is used. For example, the build task used in testing this package used to require the following script:
cross-env NODE_ENV=production node_modules/webpack/bin/webpack.js --no-progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js
The same build task can now be run using a new mix
executable with an appropriate flag:
mix --production
For the full list of scripts and their replacements, see the Laravel Mix documentation.
This repo includes a boilerplate webpack.mix.js
configuration used to test that, at the very least, .js
and .scss
files compile and that linters run. To run the test do:
npm install
npm test
Expected: No errors. Everything is fine.