#commit

app commitguard

A commitlint implementation in Rust

2 unstable releases

0.2.0 Mar 6, 2024
0.1.0 Feb 14, 2024

#1800 in Development tools

MIT license

32KB
705 lines

commitguard

A commitlint implementation in Rust.

It's a project to learn Rust, so don't expect production ready code. If anybody has suggestions to make it better, please feel free to open an issue or a PR!

Features:

  • 🎚️ Configurable
  • 🚀 Blazing fast because
  • 🦀 Written in Rust

Installation

cargo install commitguard

Usage

echo "feat(myscope): add new feature" | commitguard

Todos/Ideas:

  1. Configuration system
  2. Implement more rules (see commitlint rules or gitlint)
  3. Implement unit tests for rules
  4. Allow multiple lines in footer and parse references (like original commitlint)
  5. Use and parse CLI args (probably with Clap)
  6. Publish on npm and publish binaries for different platforms (maybe also in package managers like Homebrew)
  7. Dogfood it to lint our own commit messages
  8. Add website (probably Github pages) and add links to rule details
  9. Add devcontainer for easier getting started in VSCode
  10. Benchmark against original commitlint
  11. Migration docs from original commitlint to commitguard
  12. Allow 3rd party rules? Maybe WASM?
  13. Allow custom parsing?

Dependencies

~8–15MB
~201K SLoC