@idirdev/commitlint-quick
v2.0.0
Published
Fast, zero-config conventional commit message linter with no external dependencies.
Downloads
20
Maintainers
Readme
commitlint-quick
[EN] Fast conventional-commit linter for the CLI and CI pipelines — validate commit messages against standard rules with zero config. [FR] Linter de commits conventionnels rapide pour le CLI et les pipelines CI — validez les messages de commit selon les règles standard sans configuration.
Features / Fonctionnalités
[EN]
- Validates commit messages against the Conventional Commits specification
- Lint a message directly with
-mor read the last N commits from git history - Outputs PASS / FAIL per commit with per-rule error and warning details
- JSON output mode for machine-readable CI integration
- Custom config file support to extend or override default rules
- Exits with code 1 when errors exist (CI-friendly)
- Works in any git repository, no extra setup required
[FR]
- Valide les messages de commit selon la spécification Conventional Commits
- Lint un message directement avec
-mou lit les N derniers commits depuis l'historique git - Affiche PASS / FAIL par commit avec détails des erreurs et avertissements par règle
- Mode de sortie JSON pour une intégration CI lisible par machine
- Support de fichier de configuration personnalisé pour étendre ou remplacer les règles par défaut
- Quitte avec le code 1 en cas d'erreurs (compatible CI)
- Fonctionne dans tout dépôt git, aucune configuration supplémentaire requise
Installation
npm install -g @idirdev/commitlint-quickCLI Usage / Utilisation CLI
# Lint a message directly / Linter un message directement
commitlint-quick -m "feat(auth): add OAuth2 support"
commitlint-quick -m "wip stuff"
# Lint the last commit / Linter le dernier commit
commitlint-quick
# Lint the last 5 commits / Linter les 5 derniers commits
commitlint-quick --last 5
# JSON output for CI / Sortie JSON pour le CI
commitlint-quick --last 3 --format json
# Use a custom config / Utiliser une configuration personnalisée
commitlint-quick -m "feat: new thing" --config ./commitlint.config.jsExample Output / Exemple de sortie
PASS feat(auth): add OAuth2 support
FAIL wip stuff
error: type must be one of: feat, fix, docs, style, refactor, test, chore
error: subject must not be empty
PASS fix(api): correct 401 response code
warn: subject should be in imperative mood
2 passed, 1 failedAPI (Programmatic) / API (Programmation)
const { lintCommit, lintFromGit, RULES } = require('@idirdev/commitlint-quick');
// Lint a single message / Valider un seul message
const result = lintCommit('feat(ui): add dark mode');
// {
// message: 'feat(ui): add dark mode',
// valid: true,
// errors: [],
// warnings: []
// }
const bad = lintCommit('wip: whatever');
// { valid: false, errors: ['type "wip" is not allowed'], warnings: [] }
// Lint last 3 commits from git / Valider les 3 derniers commits git
const results = lintFromGit(3);
results.forEach(r => {
console.log(r.valid ? 'PASS' : 'FAIL', r.message.split('\n')[0]);
r.errors.forEach(e => console.log(' error:', e));
});
// Inspect default rules / Inspecter les règles par défaut
console.log(RULES);License
MIT — idirdev
