A webpack 5 based boilerplate for WinterCMS or other web projects.
In WinterCMS clone the repo and copy all files into the plugin or theme you want.
Otherwise clone the repo to a folder of your choice and change
STORAGE
in bash/config.sh
if needed
yarn
bash
to runzip
,fly
,deploy
andftp
, testet on debian/busterlftp
to upload with ftp byyarn ftp
, testet on debian/buster
phpdoc
to generate docs withyarn docs
. See https://docs.phpdoc.org/3.0/ for details
- clone the repo via
git clone https://github.com/xitara/webpack-boilerplate.git
cd webpack-es6-sass-boilerplate
- run
yarn
to fetch all the dependencies - change settings in
package.json
andbash/config.sh
if possible - run
yarn start
to start the webpack-dev-server (localhost:8080
will be opened automatically) - start developing
- when you are done, run
yarn build
to get the production version of your app
start
- start the dev serverwatch
- start webpack --watchdwatch
- start webpack --watch in development-modebuild
- create build inbuild
folderdbuild
- create development build inbuild
folderzip
- build project and pack relevant folder/files to a zip-file one level downdeploy
- build project and deploy to a folder name in package.json one level down with backup if folder existsftp
- uploads build project per FTP. Configs in ./bash/config.shdocs
- generates docs withphpdoc
if installedanalyze
- analyze your production bundlelint-code
- run an ESLint checklint-style
- run a Stylelint checkcheck-eslint-config
- check if ESLint config contains any rules that are unnecessary or conflict with Prettiercheck-stylelint-config
- check if Stylelint config contains any rules that are unnecessary or conflict with Prettiercleanup
- delete build-folder, node_modulesand other generated files/folders. files in src and static stay untouched
- webpack 5
- tailwindcss
- tailwindcss/ui
- tailwindcss-plugins
- tailwindcss-typography
- alpinejs
- glightbox
- tiny-slider
- simplebar
- mark.js
- babel
- brotli / gzip compression for assets
- eslint / stylelint
- husky pre push tests
- sass
- purgecss (for sass and tailwindcss)
wn-init-theme
- adds folders to create a complete WinterCMS theme boilerplatewn-kill-theme
- removes folders for WinterCMS theme includingtheme.yaml
andconifg
from static. Handle with care, it's not recoverable
- add the following lines to your
.htaccess
to access the compiled index.html inside your theme dev: - it works with and without translation-prefix
##
## enable display index.html for development
##
RewriteRule ^themes/.*/index\.html - [L,NC]
RewriteRule ^.*/themes/(.*)/index\.html /themes/$1/index\.html [L,NC]
RewriteRule ^.*/themes/(.*)/(assets|resources)/(.*) /themes/$1/$2/$3 [L,NC]
- Update to webpack 5
- Update all dependencies
- Add a fetch method to utils.js
- Add cross-env
- Switch to tailwind JIT-compiler
- Update all dependencies