Discover 7 Incredible Go CLI Projects on GitHub
Written on
Chapter 1: An Introduction to Golang CLI Projects
Golang has gained popularity since its inception around 15 years ago, being particularly effective for crafting both server-side applications and command-line utilities. Here, I'll highlight several remarkable Go CLI tools that are truly impressive and worth exploring.
Section 1.1: Fzf - The Fuzzy Finder
Fzf is a versatile fuzzy search tool that enables users to locate virtually anything—from files to historical commands and Git submissions. It even supports content previews and integrates seamlessly with Vim/Neovim for swift searches.
To illustrate its capabilities, let’s use Fzf to find drafts for this article:
Fzf's search functionality is just the tip of the iceberg; for further insights, check out the official demo video.
Section 1.2: Cheat - Your Interactive Cheat Sheet
Cheat is a command-line tool that allows you to create, edit, and view interactive cheat sheets for UNIX commands, complete with usage examples and explanations.
Installation is straightforward:
go install github.com/cheat/cheat/cmd/cheat@latest
With Cheat, you won't have to worry about forgetting command usages anymore! 😂
Section 1.3: NTrace-Core - Visual Route Tracing
NTrace-Core is a route tracing tool that visualizes the path taken by packets using the ICMP protocol. It displays IP addresses, geolocation, elapsed times, and even maps the route graphically.
To install, use:
brew install nexttrace
Section 1.4: Oh-My-Posh - Customize Your Terminal
Oh-My-Posh allows you to personalize your terminal prompt across various shells. With built-in themes ready for use, it supports PowerShell, Bash, Zsh, and more on different operating systems.
To install, run:
brew install jandedobbeleer/oh-my-posh/oh-my-posh
echo 'eval "$(oh-my-posh init zsh)"' >> ~/.zshrc
source ~/.zshrc
After these commands, your terminal should adopt a new theme, indicating that Oh-My-Posh is successfully set up. After using it for a day, I found it to be slightly faster than Oh-My-Zsh—perhaps my affinity for Go plays a role! 🐸
Section 1.5: Nap - Manage Your Code Snippets
Nap is a command-line tool designed to manage your code snippets efficiently. You can quickly create and access snippets or organize them through its text-user interface.
Installation is simple:
go install github.com/maaslalani/nap@main
Ensure to include your GOPATH/bin in your PATH for it to work.
Section 1.6: Gorched - A Fun Terminal Game
Gorched is a terminal game written in Go that brings back memories of games like "Bugs." It's a fun way to enjoy your time in the terminal!
To install, use:
brew install zladovan/tap/gorched
Section 1.7: Yeetgif - Create Animated GIFs
Yeetgif is a command-line tool for generating GIF animations using emoticons. It offers various modes such as rotate, shake, and ghost, allowing for creative and entertaining expressions.
To install, run:
go install github.com/sgreben/yeetgif/cmd/gif@latest
brew install giflossy
With Yeetgif, there are countless fun methods waiting for you to discover!