Changelog Generator CLI
A CLI tool that generates changelogs from git history and conventional commits with grouping, filtering, and formatting options. Supports multiple output formats, version tagging, and customizable ...
Target user
Open source maintainers and teams who need changelogs
Problem
Maintainers need to generate accurate changelogs from commit history without manually reviewing every commit, especially when using conventional commit format.
Requirements
- Parse git log for conventional commits
- Group changes by type (feat, fix, etc.)
- Filter by version range or date
- Output in Markdown or JSON format
- Support custom section headers and ordering
Core technologies
Node.js, TypeScript, simple-git
Completion criteria
Users can generate formatted changelogs from git history with grouping, filtering, and multiple output formats.
Optional extensions
- Add semver version bumping
- Implement GitHub release integration
- Add contributor listing
- Support unreleased section
Project phases
Phase 1: Phase 1: Commit Parsing
Tasks: Set up git log retrieval, Parse conventional commit format, Extract type, scope, and message, Handle breaking changes
Phase 2: Phase 2: Grouping and Formatting
Tasks: Group commits by type, Sort within groups by scope, Build Markdown output, Add JSON output format
Phase 3: Phase 3: Filtering and Polish
Tasks: Add version range filtering, Implement date filtering, Support custom headers, Create CLI documentation