No Description

oldj 4ba0dc8918 Merge branch 'master' into develop 6 years ago
.github 9edea78946 Update issue_template.md 7 years ago
app 4ba0dc8918 Merge branch 'master' into develop 6 years ago
app-ui 53b2072cd2 update dependencies. 6 years ago
assets 948e836fc9 更新截图。 8 years ago
scripts c053999a36 update Electron to v5.0.0. 6 years ago
test cb7da7e95a 保存时刷新初步实现。 8 years ago
.babelrc 0f520983d1 [update] update dependencies, use webpack 4, babel 7. 7 years ago
.gitattributes 6aafc4e346 Update .gitattributes 8 years ago
.gitignore 4ba0dc8918 Merge branch 'master' into develop 6 years ago
License.md 20bfc2474e Create License.md 8 years ago
README.md 781e7fd934 Fix typo 6 years ago
README_cn.md d8f63b28d0 Fix typo 6 years ago
gulpfile.js 4ba0dc8918 Merge branch 'master' into develop 6 years ago
package-lock.json c053999a36 update Electron to v5.0.0. 6 years ago
package.json c053999a36 update Electron to v5.0.0. 6 years ago

README.md

SwitchHosts!

Homepage: https://oldj.github.io/SwitchHosts/

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

Screenshot

Capture

Features

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

Install

Download

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

brew

On macOS you can install SwitchHosts! by brew cask:

brew cask install switchhosts

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

scoop

On Windows you can install SwitchHosts! by scoop:

scoop install switchhosts

Thanks to @batkiz for updating the scoop version.

Backup

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

Environment

  • 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
    

Copyright

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