Skip to content
Switch hosts quickly!
Branch: master
Clone or download
Latest commit d6cf638 Dec 30, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Update Mar 20, 2018
app-ui [update] update acknowledgement. Oct 11, 2018
app npm install时gulp报错修复 Oct 30, 2018
scripts 修复一处样式问题。 Sep 14, 2017
test 保存时刷新初步实现。 Mar 31, 2017
.babelrc 开始使用CSS模块化。 Aug 4, 2017
.gitattributes Update .gitattributes Sep 8, 2017
.gitignore Create Feb 6, 2017 Fix typo Dec 29, 2018
gulpfile.js 修复master打包后可执行文件启动报错 Nov 12, 2018
package.json npm install时gulp报错修复 Oct 30, 2018
webpack.config.js 修复一处样式问题。 Sep 14, 2017



SwitchHosts! is an App for managing hosts file, it is based on Electron, React, and Ant Design, CodeMirror, etc.




  • Switch hosts quickly
  • Syntax highlight
  • Remote hosts
  • Switch from system tray
  • macOS only: Alfred workflow support



You can download the source code and build it yourself, or download the built version from following links:


On macOS you can install SwitchHosts! by brew cask:

brew cask install switchhosts

Thanks to @gobinathm and @iamybj for updating the brew cask version.


On Windows you can install SwitchHosts! by scoop:

scoop install switchhosts

Thanks to @batkiz for updating the scoop version.


SwitchHosts! stores data at ~/.SwitchHosts (Or folder .SwitchHosts under the current user's home path on Windows), the ~/.SwitchHosts/data.json contains data, while the ~/.SwitchHosts/prefereces.json contains preferences info.

Run and Build


  • Install Node.js

  • Change to the folder ./, run npm install to install dependented libraries

  • Change to the folder ./app, run npm install again

    npm install
    cd app && npm install && cd ..

Build and run

  • Change to the folder ./, run npm run dll to build common files

  • Change to the folder ./, run npm run build

  • Change to the folder ./, run npm start, the App should start

    # create dll file
    npm run dll
    # build
    npm run build
    # start
    npm start
    # or start in developer mode
    npm run dev

Package and Zip

  • It is recommended to use electron-packager for packaging.

    # install electron-packager for use from cli
    npm install electron-packager -g
  • Go to the ./ folder, run npm run pack . The packaged file will be the ./dist folder.

  • This command may take several minutes to finish when you run it the first time, as it needs time to download dependent files. You can download the dependencies manually here, or Taobao mirror, then save the files to ~/.electron. You can check the Electron Docs for more infomation.

    # pack
    npm run pack  # the packed files will be in ./dist
    # or pack for a special platform
    npm run pack-mac  # pack for macOS, the packed files will be in ./dist
    npm run pack-win  # pack for Windows, the packed files will be in ./dist
  • After packaging, you can make a zip file by running the following command.

    # zip
    npm run zip  # the zipped files will be in ./dist


SwitchHosts! is a free and open source software, it is released under the MIT license.

You can’t perform that action at this time.