@templ-project/commitlint
v1.0.0
Published
Prettier configuration for Templ Project
Downloads
5
Readme
@templ-project/commitlint
A zero-configuration commitlint setup that extends @commitlint/config-conventional with a flexible configuration factory. This package provides an easy way to enforce Conventional Commits in your JavaScript and TypeScript projects.
Features
- Zero Configuration: Works out of the box with sensible defaults
- Flexible Factory: Configuration function accepts custom options
- Conventional Commits: Built on
@commitlint/config-conventional - Dual Module Support: ESM and CommonJS compatible
Installation
npm install --save-dev @templ-project/commitlintUsage
Basic Usage
// commitlint.config.js
import commitlintConfig from '@templ-project/commitlint';
export default commitlintConfig();With Custom Options
// commitlint.config.js
import commitlintConfig from '@templ-project/commitlint';
export default commitlintConfig({
rules: {
'header-max-length': [2, 'always', 72],
'scope-empty': [2, 'never']
},
ignores: [
(commit) => commit.includes('[skip ci]')
]
});CommonJS
// commitlint.config.js
const commitlintConfig = require('@templ-project/commitlint');
module.exports = commitlintConfig();Configuration
The configuration factory merges your options with the base @commitlint/config-conventional configuration:
export default (options = {}) => ({
extends: ['@commitlint/config-conventional'],
...options,
});For detailed rule configuration and usage, see the commitlint documentation.
Git Hooks Setup
Install with Husky for automatic commit message validation:
npm install --save-dev husky
echo 'npx commitlint --edit $1' > .husky/commit-msg
chmod +x .husky/commit-msgTesting
The package includes comprehensive tests validating configuration factory behavior:
npm testDocumentation
License
MIT © Dragos Cirjan
