{"id":13562429,"url":"https://github.com/guumaster/hostctl","last_synced_at":"2025-05-15T16:04:36.943Z","repository":{"id":43087709,"uuid":"247263781","full_name":"guumaster/hostctl","owner":"guumaster","description":"Your dev tool to manage /etc/hosts like a pro!","archived":false,"fork":false,"pushed_at":"2024-01-26T21:11:34.000Z","size":3616,"stargazers_count":1140,"open_issues_count":19,"forks_count":51,"subscribers_count":13,"default_branch":"master","last_synced_at":"2025-04-07T21:12:42.886Z","etag":null,"topics":["cli","developer-tools","dns","etchosts","go","golang","hosts-file","hostsfile","localhost-management"],"latest_commit_sha":null,"homepage":"http://guumaster.github.io/hostctl","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/guumaster.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":null,"ko_fi":"guumaster","custom":["https://www.buymeacoffee.com/guumaster"]}},"created_at":"2020-03-14T11:29:02.000Z","updated_at":"2025-03-25T16:09:07.000Z","dependencies_parsed_at":"2024-06-18T13:41:32.771Z","dependency_job_id":"7b69e9b8-7003-42fb-adc4-74a5b09b48e6","html_url":"https://github.com/guumaster/hostctl","commit_stats":{"total_commits":235,"total_committers":20,"mean_commits":11.75,"dds":0.5702127659574467,"last_synced_commit":"f1bc636cff09cb3ee4fec61f0aebe11b899cbb4c"},"previous_names":[],"tags_count":45,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/guumaster%2Fhostctl","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/guumaster%2Fhostctl/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/guumaster%2Fhostctl/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/guumaster%2Fhostctl/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/guumaster","download_url":"https://codeload.github.com/guumaster/hostctl/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254374408,"owners_count":22060610,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","developer-tools","dns","etchosts","go","golang","hosts-file","hostsfile","localhost-management"],"created_at":"2024-08-01T13:01:08.492Z","updated_at":"2025-05-15T16:04:36.888Z","avatar_url":"https://github.com/guumaster.png","language":"Go","readme":"[![Tests][tests-badge]][tests-link]\n[![GitHub Release][release-badge]][release-link]\n[![Go Report Card][report-badge]][report-link]\n[![License][license-badge]][license-link]\n[![All Contributors][all-contributors-badge]][all-contributors-link]\n[![Coverage][coverage-badge]][coverage-link]\n[![Mentioned in Awesome Go][awesome-go-badge]][awesome-go-link]\n\n# hostctl\n\n[![Your dev tool to manage /etc/hosts like a pro!](docs/hostctl.png)](http://guumaster.github.io/hostctl/)\n\nThis tool gives you more control over the use of your hosts file. \nYou can have multiple profiles and switch them on/off as you need.\n\n\n## Why?\n\nIt is a tedious task to handle the `hosts` file by editing manually.\nWith this tool you can automate some aspects to do it cleaner and quick. \n\n\n## Features\n\n  * Manage groups of host names by profile.\n  * Enable/disable complete profiles.\n  * Add/remove groups of host names.\n  * Add profiles directly from a text file that you can add to your git repo or any VCS.\n  * Sync a profile with Docker or Docker Compose containers.\n  \n\n## Documentation\n\nYou can read about how to use this tool here:\n\n* [Getting started guide](http://guumaster.github.io/hostctl/docs/getting-started/) \n* [Usage Guides](http://guumaster.github.io/hostctl/docs/guides/)\n* [CLI commands, options and flags](http://guumaster.github.io/hostctl/docs/cli-usage/)\n\nOr you can start directly on the [Docs homepage](http://guumaster.github.io/hostctl/).\n\n\n## Sample Usage\n![sample usage](docs/hostctl.gif)\n\n\n## Installation\n\nGo to [release page](https://github.com/guumaster/hostctl/releases) and download the binary you prefer.\n\nOr read about other installation methods on different systems [here](http://guumaster.github.io/hostctl/docs/installation/)\n\n\n## Linux/Mac/Windows and permissions\n\nThe 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.\n\n**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.\n\n**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](https://github.com/guumaster/hostctl/issues/new).\n\n## Contributing\n\nBe sure to read [CONTRIBUTING](CONTRIBUTING.md) and [CODE_OF_CONDUCT](CODE_OF_CONDUCT.md).\n\n\n## Contributors ✨\n\nThanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):\n\n\u003c!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section --\u003e\n\u003c!-- prettier-ignore-start --\u003e\n\u003c!-- markdownlint-disable --\u003e\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/gkze\"\u003e\u003cimg src=\"https://avatars0.githubusercontent.com/u/3131232?v=4?s=50\" width=\"50px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eGeorge Kontridze\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/guumaster/hostctl/commits?author=gkze\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/pacodes\"\u003e\u003cimg src=\"https://avatars2.githubusercontent.com/u/28688410?v=4?s=50\" width=\"50px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003ePacodes\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/guumaster/hostctl/commits?author=pacodes\" title=\"Tests\"\u003e⚠️\u003c/a\u003e \u003ca href=\"https://github.com/guumaster/hostctl/commits?author=pacodes\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://772424.com\"\u003e\u003cimg src=\"https://avatars3.githubusercontent.com/u/64371?v=4?s=50\" width=\"50px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eBarbUk\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/guumaster/hostctl/commits?author=BarbUk\" title=\"Code\"\u003e💻\u003c/a\u003e \u003ca href=\"#ideas-BarbUk\" title=\"Ideas, Planning, \u0026 Feedback\"\u003e🤔\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/devopsbrett\"\u003e\u003cimg src=\"https://avatars1.githubusercontent.com/u/4403441?v=4?s=50\" width=\"50px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eBrett Mack\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/guumaster/hostctl/commits?author=devopsbrett\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://peterthaleikis.com\"\u003e\u003cimg src=\"https://avatars0.githubusercontent.com/u/8433587?v=4?s=50\" width=\"50px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003ePeter Thaleikis\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/guumaster/hostctl/commits?author=spekulatius\" title=\"Code\"\u003e💻\u003c/a\u003e \u003ca href=\"https://github.com/guumaster/hostctl/commits?author=spekulatius\" title=\"Documentation\"\u003e📖\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/smhmd\"\u003e\u003cimg src=\"https://avatars0.githubusercontent.com/u/46059092?v=4?s=50\" width=\"50px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003esimohamed\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#ideas-smhmd\" title=\"Ideas, Planning, \u0026 Feedback\"\u003e🤔\u003c/a\u003e \u003ca href=\"https://github.com/guumaster/hostctl/commits?author=smhmd\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/fabiang\"\u003e\u003cimg src=\"https://avatars2.githubusercontent.com/u/348344?v=4?s=50\" width=\"50px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eFabian Grutschus\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#ideas-fabiang\" title=\"Ideas, Planning, \u0026 Feedback\"\u003e🤔\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/kadern0\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/13137996?v=4?s=50\" width=\"50px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003ePablo Caderno\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/guumaster/hostctl/commits?author=kadern0\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/ddl-jbrown\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/67287351?v=4?s=50\" width=\"50px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eJosh Brown\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/guumaster/hostctl/issues?q=author%3Addl-jbrown\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/lukasmrtvy\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/768572?v=4?s=50\" width=\"50px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eLukas M\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/guumaster/hostctl/issues?q=author%3Alukasmrtvy\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e \u003ca href=\"#ideas-lukasmrtvy\" title=\"Ideas, Planning, \u0026 Feedback\"\u003e🤔\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n\u003c!-- markdownlint-restore --\u003e\n\u003c!-- prettier-ignore-end --\u003e\n\n\u003c!-- ALL-CONTRIBUTORS-LIST:END --\u003e\n\nThis project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!\n\n\n## Author(s)\n\n* [guumaster](https://github.com/guumaster)\n\nIf you like this tool and think is worth it, you can invite me a coffee: \n\n[![paypal.me/guumaster][paypal-badge]][paypal-link]\n[![ko-fi.com/guumaster][kofi-badge]][kofi-link]\n\n\n## LICENSE\n\n [MIT license](LICENSE)\n\n\n\n\n\u003c!-- JUST BADGES \u0026 LINKS --\u003e\n[tests-badge]: https://img.shields.io/github/actions/workflow/status/guumaster/hostctl/tests.yml\n[tests-link]: https://github.com/guumaster/hostctl/actions/workflows/tests.yml\n\n[release-badge]: https://img.shields.io/github/release/guumaster/hostctl.svg?logo=github\u0026labelColor=262b30\n[release-link]: https://github.com/guumaster/hostctl/releases\n\n[report-badge]: https://goreportcard.com/badge/github.com/guumaster/hostctl\n[report-link]: https://goreportcard.com/report/github.com/guumaster/hostctl\n\n[license-badge]: https://img.shields.io/github/license/guumaster/hostctl\n[license-link]: https://github.com/guumaster/hostctl/blob/master/LICENSE\n\n[coverage-badge]: https://sonarcloud.io/api/project_badges/measure?project=guumaster_hostctl\u0026metric=coverage\n[coverage-link]: https://sonarcloud.io/dashboard?id=guumaster_hostctl\n\n[awesome-go-badge]: https://awesome.re/mentioned-badge.svg\n[awesome-go-link]: https://github.com/avelino/awesome-go\n\n\u003c!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section --\u003e\n[all-contributors-badge]: https://img.shields.io/badge/contributors-10-blue.svg\n\u003c!-- ALL-CONTRIBUTORS-BADGE:END --\u003e\n[all-contributors-link]: #contributors-\n\n[paypal-link]: https://www.paypal.me/guumaster\n[paypal-badge]: https://img.shields.io/static/v1?label=donate\u0026message=PayPal\u0026color=00457C\u0026logo=paypal\n\n[kofi-link]: https://ko-fi.com/guumaster\n[kofi-badge]: https://img.shields.io/static/v1?label=donate\u0026message=Ko-fi\u0026color=F16061\u0026logo=ko-fi\n","funding_links":["https://ko-fi.com/guumaster","https://www.buymeacoffee.com/guumaster","https://www.paypal.me/guumaster"],"categories":["开源类库","Utilities","Go","Repositories","Open source library","Uncategorized","Utility","公用事业公司","工具库`可以提升效率的通用代码库和工具`","Bash","工具库"],"sub_categories":["文本处理","Utility/Miscellaneous","Word Processing","Uncategorized","Fail injection","实用程序/Miscellaneous","查询语","HTTP Clients"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fguumaster%2Fhostctl","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fguumaster%2Fhostctl","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fguumaster%2Fhostctl/lists"}