1.0.1 • Published 5 years ago
@humans-machines/coding-standards v1.0.1
@humans-machines/coding-standards
Shareable configs for different coding standard tools.
Getting started
npm install --save-dev @humans-machines/coding-standards
commitlint
Use with @commitlint/cli and @commitlint/prompt-cli.
// file commitlint.config.js
module.exports = {
'extends': ['@humans-machines/coding-standards/commitlint.config']
}
Problems
The following rules are considered problems for @humans-machines/coding-standards/commitlint.config
and will yield a non-zero exit code when not met.
Consult docs/rules for a list of available rules.
type-enum
- condition:
type
is found in value - rule:
always
value
[ 'add', 'build', 'bump', 'chore', 'ci', 'docs', 'feat', 'fix', 'merge', 'perf', 'refactor', 'remove', 'revert', 'style', 'test', 'Add', 'Build', 'Bump', 'Chore', 'Ci', 'Docs', 'Feat', 'Fix', 'Merge', 'Perf', 'Refactor', 'Remove', 'Revert', 'Style', 'Test', ]
echo "Foo: some message" # fails
echo "Fix: some message" # passes
type-empty
- condition:
type
is empty - rule:
never
echo " : some message" # fails
echo "Fix: some message" # passes
scope-case
- condition:
scope
is in casevalue
- rule:
always
'lowerCase'
echo "Fix(SCOPE): some message" # fails
echo "Fix(scope): some message" # passes
subject-case
- condition:
subject
is in one of the cases['sentence-case', 'start-case', 'pascal-case', 'upper-case']
- rule:
never
echo "Fix(SCOPE): Some message" # fails
echo "Fix(SCOPE): Some Message" # fails
echo "Fix(SCOPE): SomeMessage" # fails
echo "Fix(SCOPE): SOMEMESSAGE" # fails
echo "Fix(scope): some message" # passes
echo "Fix(scope): some Message" # passes
subject-empty
- condition:
subject
is empty - rule:
never
echo "Fix:" # fails
echo "Fix: some message" # passes
subject-full-stop
- condition:
subject
ends withvalue
- rule:
never
- value
'.'
echo "Fix: some message." # fails
echo "Fix: some message" # passes
header-max-length
- condition:
header
hasvalue
or less characters - rule:
always
- value
72
echo "Fix: some message that is way too long and breaks the line max-length by several characters" # fails
echo "Fix: some message" # passes
eslint
Add this to your .eslintrc
file:
{
"extends": "@humans-machines"
}
See @humans-machines/eslint-config for detailed information.
stylelint
PHP_CodeSniffer
phpcs --standard=./node_modules/@humans-machines/coding-standards/phpcs.xml
TODO
- provide some documentation about how to setup with
husky