A inheritable boilerplate with webpack5, react, sass, hmr, express & SSR support
Create a project with https://github.com/n8tz/layer-pack,
Then add build profiles basing this package available profiles :
- www & wwwDev : A generic profile to make browser side builds
- api : A generic profile to make backend/cli builds
- Comp & CompDev : A generic profile to build stand alone es6/react libs & component
- static & staticDev : A generic profile to build stand alone app with html
- react ^18
- express with minimal SSR
- sass
- es6 + decorators
- react-refresh, SSR & api proxying
- react-helmet ( html header manager )
In order to install dependencies of this package use:
lpack-setup
# or lpack-setup :wantedProfile
{
"default":{
"extend":["lpack-react"]
},
"www":"default", // use extends of the default profile, and www profile in lpack-react
"wwwDev":"default",
"api":"default"
}
- See this package .layers.json for all available profiles
- targetDir {String} : relative target build directory
- production {bool} : build using production mode
- extractCss {bool} : do extract css
- babelInclude {regexp string} : optional regexp to force parsing external scripts / mjs packages
- babelPreset {object} : optional options for the babelPreset loader
- TerserJSPlugin {object} : optional options for the TerserJSPlugin
- HtmlWebpackPlugin {object} : optional options for HtmlWebpackPlugin