Description
Your dev tool to manage /etc/hosts like a pro.
Manage groups of host names by profile.
Enable/disable complete profiles.
Add/remove groups of host names.
Add profiles directly from a text file that you can add to your git repo or any VCS.
Sync a profile with Docker or Docker Compose containers.
hostctl alternatives and similar packages
Based on the "Command Line" category.
Alternatively, view hostctl alternatives based on common mentions on social networks and blogs.
-
urfave/cli
A simple, fast, and fun package for building command line apps in Go -
Rich Interactive Widgets for Terminal UIs
Terminal UI library with rich, interactive widgets — written in Golang -
go-prompt
Building powerful interactive prompts in Go, inspired by python-prompt-toolkit. -
elvish
Elvish = Expressive Programming Language + Versatile Interactive Shell -
tcell
Tcell is an alternate terminal package, similar in some ways to termbox, but better in others. -
survey
A golang library for building interactive and accessible prompts with full support for windows and posix terminals. -
cointop
A fast and lightweight interactive terminal based UI application for tracking cryptocurrencies 🚀 -
pterm
✨ #PTerm is a modern Go module to easily beautify console output. Featuring charts, progressbars, tables, trees, text input, select menus and much more 🚀 It's completely configurable and 100% cross-platform compatible. -
progressbar
A really basic thread-safe progress bar for Golang applications -
The Platinum Searcher
A code search tool similar to ack and the_silver_searcher(ag). It supports multi platforms and multi encodings. -
pflag
Drop-in replacement for Go's flag package, implementing POSIX/GNU-style --flags. -
asciigraph
Go package to make lightweight ASCII line graph ╭┈╯ in command line apps with no other dependencies. -
readline
Readline is a pure go(golang) implementation for GNU-Readline kind library -
Git Town
Git workflow automation to keep branches in sync and reduce merge conflicts. -
uiprogress
A go library to render progress bars in terminal applications -
dotenv-linter
⚡️Lightning-fast linter for .env files. Written in Rust 🦀 -
mitchellh/cli
A Go library for implementing command-line interfaces. -
termenv
Advanced ANSI style & color support for your terminal applications -
CLI Color
🎨 Terminal color rendering library, support 8/16 colors, 256 colors, RGB color rendering output, support Print/Sprintf methods, compatible with Windows. GO CLI 控制台颜色渲染工具库,支持16色,256色,RGB色彩渲染输出,使用类似于 Print/Sprintf,兼容并支持 Windows 环境的色彩渲染 -
ov
🎑Feature-rich terminal-based text viewer. It is a so-called terminal pager. -
flaggy
Idiomatic Go input parsing with subcommands, positional values, and flags at any position. No required project or package layout and no external dependencies. -
uitable
A go library to improve readability in terminal apps using tabular data
Learn any GitHub repo in 59 seconds
Do you think we are missing an alternative of hostctl or a related project?
Popular Comparisons
README
hostctl
[Your dev tool to manage /etc/hosts like a pro!](docs/hostctl.png)
This tool gives you more control over the use of your hosts file. You can have multiple profiles and switch them on/off as you need.
Why?
It is a tedious task to handle the hosts
file by editing manually.
With this tool you can automate some aspects to do it cleaner and quick.
Features
- Manage groups of host names by profile.
- Enable/disable complete profiles.
- Add/remove groups of host names.
- Add profiles directly from a text file that you can add to your git repo or any VCS.
- Sync a profile with Docker or Docker Compose containers.
Documentation
You can read about how to use this tool here:
Or you can start directly on the Docs homepage.
Sample Usage
[sample usage](docs/hostctl.gif)
Installation
Go to release page and download the binary you prefer.
Or read about other installation methods on different systems here
Linux/Mac/Windows and permissions
The tool recognize your system and use the right hosts file, it will use /etc/hosts
on Linux/Mac and C:/Windows/System32/Drivers/etc/hosts
on Windows.
SUDO/ADMIN: You will need permissions for any action that modify hosts file, add sudo
to the commands below when needed. If you are on windows, make sure you run it as administrator.
WARNING: it should work on any system. It's tested on Ubuntu and Windows 10. If you can confirm it works on other system, please let me know here.
Contributing
Be sure to read [CONTRIBUTING](CONTRIBUTING.md) and [CODE_OF_CONDUCT](CODE_OF_CONDUCT.md).
Contributors ✨
Thanks goes to these wonderful people (emoji key):
<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section --> <!-- prettier-ignore-start --> <!-- markdownlint-disable --> George Kontridze💻 Pacodes⚠️ 💻 BarbUk💻 🤔 Brett Mack💻 Peter Thaleikis💻 📖 simohamed🤔 💻 Fabian Grutschus🤔 Pablo Caderno💻 Josh Brown🐛 Lukas M🐛 🤔
<!-- markdownlint-restore --> <!-- prettier-ignore-end -->
<!-- ALL-CONTRIBUTORS-LIST:END -->
This project follows the all-contributors specification. Contributions of any kind welcome!
Author(s)
If you like this tool and think is worth it, you can invite me a coffee:
LICENSE
[MIT license](LICENSE)
<!-- JUST BADGES & LINKS -->
<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
<!-- ALL-CONTRIBUTORS-BADGE:END -->
*Note that all licence references and agreements mentioned in the hostctl README section above
are relevant to that project's source code only.