Skip to content

hamzaODprogramer/odgit

Repository files navigation

odgit

License: MIT npm: @hamzaod/odgit TypeScript

odgit-screenshot

A beautiful, keyboard-driven git TUI dashboard with a dark retro aesthetic. Fast, minimal, no bloat. Perfect for managing git operations right from your terminal.

With odgit you can:

  • See git status instantly - All modified files at a glance
  • Navigate with just keyboard - Arrow keys, Enter, that's it
  • Stage and commit smartly - Auto-stages before commit
  • Generate commit messages with AI - Free conventional commits using apifreellm
  • Manage branches, stash, logs - All git operations in one place
  • No mouse required - Pure keyboard-driven workflow

⚡ Quick Start

Install (One Command)

npm install -g @hamzaod/odgit

Run (Type Anywhere)

odgit

Done! 🚀


🎮 How to Use

Keyboard only. That's it.

Key What It Does
Move up/down in menu
Enter Do the selected action
? Show help
q Quit
r Refresh

Example Workflow

1. Type: odgit
2. Edit some files in your project
3. Press ↓ to select "commit"
4. Press Enter
5. Type your commit message
6. Press Enter
7. Done! Files auto-staged and committed

📋 What You Can Do

Action What It Does
status See all modified files
stage Mark files to commit
commit Stage everything + write message
gen msg AI generates commit message for you
push Send commits to GitHub
pull Get latest from GitHub
log See recent commits
branch Switch to another branch
stash Save work temporarily
pop stash Get saved work back
discard Throw away changes (whoops!)

🤖 AI Commit Messages (Optional)

odgit can auto-generate commit messages using AI:

1. Select "gen msg"
2. Press Enter
3. Wait 2 seconds
4. See: "feat(auth): add login function"
5. Edit or confirm

How to enable:


❓ FAQ

Q: I ran npm install -g @hamzaod/odgit. Can I now type odgit from anywhere?

A: Yes! After npm install -g @hamzaod/odgit, the odgit command works in any terminal, any directory. Just type:

odgit

It works because npm puts it in your PATH. No extra setup needed.

Q: Do I need to be in a git project?

A: Yes. odgit only works inside git repositories. If you're not in one, run git init first.

Q: Where does odgit save my API key?

A: In .env file in your home directory. It's never uploaded to GitHub or sent anywhere except to apifreellm.com for generating messages.

Q: Can I use odgit without the AI feature?

A: Absolutely. Just skip the API key setup on first launch (press Esc). You can use all other features normally.

Q: What if I mess up my code with "discard"?

A: Be careful! "discard" deletes all changes. Use it only when you're sure. Odgit asks for confirmation before doing it.

Q: How do I update odgit?

A: Same command:

npm install -g @hamzaod/odgit

npm automatically updates to the latest version.

Q: Can I use this on Windows / Mac / Linux?

A: Yes! Works on all three. You just need Node.js 18+.

Q: I got an error "Raw mode not supported"

A: You're probably in a non-interactive terminal (GitHub Actions, Docker, etc.). odgit needs a real terminal to work. Try running locally instead.

Q: Where can I report bugs?

A: GitHub Issues: https://github.com/hamzaODprogramer/odgit/issues


🎨 Why Is It Different?

  • No mouse - Pure keyboard, super fast
  • No clutter - Just what you need
  • Retro look - Cyan/magenta, dark background
  • Smart features - Auto-stages before commit
  • AI integration - Free conventional commits
  • Single render - Ultra-fast, no lag

🔧 Troubleshooting

"odgit: command not found"

npm install -g @hamzaod/odgit

"No git repository"

git init

"API key invalid"

"Terminal looks weird"

  • Try a different terminal app
  • Make sure terminal supports 256+ colors

📖 Learn More

  • Quick Start: See QUICKSTART.md
  • Installation: See package.json
  • Contributing: Pull requests welcome!

📝 License

MIT - Use however you want


🙋 Support

Questions? Open an issue on GitHub or check QUICKSTART.md for more help.


📦 Package

npm: https://www.npmjs.com/package/@hamzaod/odgit GitHub: https://github.com/hamzaODprogramer/odgit

Install with:

npm install -g @hamzaod/odgit

Happy committing! 🚀

About

Retro terminal Git TUI with keyboard-driven workflow. Zero bloat, single-render architecture, AI commit messages. Built with TypeScript + React Ink.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors