Example child theme for the Planet 4 Wordpress project
Child theme for the Planet 4 Wordpress project. The related master theme’s code lives at:, (*1)
Please check the master theme code for more information., (*3)
Included is a githook (commit-msg) which is run to ensure standardized commit messages. Conventional commits is used as the convention., (*4)
[optional 'maintenance' type][type]([optional scope])[breaking change]: [description] [optional body]
|Scope||Optional explanation of the scope of the change ie
|Breaking change||When a breaking change is introduced use
|Description||10-52 char explanation what the commit does|
|Body||Optionally more axplanation on the what and why|
The following commits correlate to SemVer version changes., (*5)
||Major version change, ie 2.x.x|
||Minor version change, ie x.2.x|
|commit with type
||Patch version change, ie x.x.2|
To watch the files run
yarn start., (*6)
To build files for production run
yarn build., (*7)
All source code gets transpiled according to our actual usage data. To make sure we don't support too old browsers, the usage data should be refreshed every once in a while (once-twice a year).
Generating the usage data can be done using browserslist-ga-export, (*8)
Linters for both CSS and JS are available both for linting and fixing.
yarn lint:fix for both CSS and JS
yarn lint:[css/js] for either CSS or JS
yarn lint:[css/js]:fix for either CSS or JS, (*9)
Release steps are largely automated, this includes: changing branching to loosely follow gitflow, generating assets generating changelogs and tagging the new release. Only (purposely) manual step left is pushing the branches and tags to remote.
Changelogs are autogenerated by
standard-version if the commit guidelines are followed.
yarn release for running releases
yarn dryrelease for checking what the impact of a release is
CircleCI is used as the CI automation. Steps for releasing new versions are in the Planet4 Documentation, (*10)