standard-commit 0.2.0

Conventional commit parsing, validation, and formatting
Documentation
# standard-commit

Conventional commit parsing, validation, and formatting.

Implements the [Conventional Commits][cc] specification as a
pure library — no I/O, no git operations, no terminal output.

## Entry points

- `parse` — parse a commit message into a `ConventionalCommit`
- `lint` — validate a message against a `LintConfig`
- `format` — render a `ConventionalCommit` back to a string

## Example

```rust
use standard_commit::{parse, format, lint, LintConfig};

let commit = parse("feat(auth): add OAuth2 PKCE flow").unwrap();
assert_eq!(commit.r#type, "feat");
assert_eq!(commit.scope.as_deref(), Some("auth"));

// Round-trip: format back to string
assert_eq!(format(&commit), "feat(auth): add OAuth2 PKCE flow");

// Lint with default rules
let errors = lint("feat: add login", &LintConfig::default());
assert!(errors.is_empty());
```

## Part of git-std

This crate is one of four libraries powering [git-std][git-std],
a single binary for conventional commits, versioning, changelog,
and git hooks.

## License

MIT

[cc]: https://www.conventionalcommits.org/en/v1.0.0/
[git-std]: https://github.com/driftsys/git-std