da-commit
v1.1.3
Published
Interactive git commit helper CLI
Downloads
765
Maintainers
Readme
da-commit
Interactive CLI for writing conventional commits — step by step, in the terminal.
Features
- Interactive TUI built with Ink
- Conventional Commits format with emoji (
✨ feat(scope): message) - Stage/unstage files before committing
--amendmode to edit the last commit--pushflag to automatically push after committing- 14 commit types supported
Install
npm install -g da-commitOr run without installing:
npx da-commitUsage
Use da-commit instead of git add . && git commit -m:
# before
git add .
git commit -m "feat: add new feature"
# with da-commit
da-commitda-commit # new commit
da-commit --amend # amend last commit
da-commit --push # commit then push
da-commit --amend --push # amend then pushSteps
- Stage files — select which files to stage (
spaceto toggle,ato toggle all) - Commit type — pick a type (feat, fix, chore, ...)
- Scope — optional scope (e.g.
auth,api) - Message — short description of the change
- Preview — review the final commit message before committing
Commit Types
| Type | Emoji | Description |
|------------|-------|------------------------------|
| feat | ✨ | A new feature |
| fix | 🐛 | A bug fix |
| chore | 🔧 | Maintenance tasks |
| refactor | ♻️ | Code refactoring |
| docs | 📝 | Documentation changes |
| style | 💄 | Code style changes |
| test | ✅ | Adding or updating tests |
| perf | ⚡ | Performance improvements |
| ci | 👷 | CI/CD changes |
| build | 📦 | Build system changes |
| revert | ⏪ | Revert a previous commit |
| deps | ⬆️ | Dependency updates |
| release | 🚀 | Release a new version |
| wip | 🚧 | Work in progress |
Keybindings
| Key | Action |
|-------------|--------------------|
| ↑ / ↓ | Navigate |
| space | Toggle file staged |
| a | Toggle all files |
| enter | Continue / confirm |
| esc | Go back |
Requirements
| | Minimum | Check |
|---|---------|-------|
| Node.js | 18.0.0 | node -v |
| npm | 8.0.0 | npm -v |
| Git | 2.0.0 | git --version |
Versions below Node.js 18 are not supported due to ESM compatibility.
Install Node.js via nodejs.org or nvm.
# with nvm
nvm install 18
nvm use 18License
MIT
