A simple, elegant open-source Markdown editor with realtime WYSIWYG preview for Linux, macOS and Windows.
oldj/SwitchHosts
A desktop app for managing and switching system hosts file entries, built with Tauri, React and TypeScript.
Open-source alternative to:SwitchHosts
- Stars
- 27,293
- Forks
- 2,689
- Open issues
- 419
- Last commit
- 21 hours ago
What is it?
SwitchHosts is a desktop application for managing the system hosts file. Instead of editing the file by hand, you organize hosts entries into local, remote, group and folder collections and enable the set you need from the main window or the system tray.
Remote entries can be refreshed manually, on a schedule, or at startup, and hosts data can be imported and exported, including importing backups from a URL. Deleted entries go to a trashcan where they can be restored. The app also offers syntax highlighting, find and replace across entries, and preferences covering write mode, proxy, post-apply commands and a local HTTP API.
The app is built with Tauri, React, Jotai and Mantine, and is distributed for macOS, Linux and Windows, including a Chocolatey package on Windows.
Key features
- 01Manage system, local, remote, group and folder hosts entries
- 02Switch hosts configurations from the main window or system tray
- 03Syntax highlighting and find and replace across entries
- 04Scheduled, manual or startup refresh of remote hosts
- 05Import and export of hosts data, including backups from a URL
- 06Trashcan for restoring or deleting removed entries
Use cases
- Switching between development, staging and production host mappings
- Pointing domains to test servers without editing the hosts file manually
- Subscribing to a shared remote hosts list that updates automatically
- Keeping hosts configurations backed up and restorable
Quick start
- 1
Install dependencies with npm
npm install - 2
Start the app in development mode
npm run tauri:dev - 3
Create a production build
npm run tauri:build
Things to know
- Requires Node.js 24 LTS, Rust 1.90 or newer, and Tauri system dependencies to build from source.
- Writing the system hosts file requires administrator or root permissions.
Topics
FAQ
- What is SwitchHosts?
- A desktop app for managing and switching system hosts file entries, built with Tauri, React and TypeScript. SwitchHosts is a desktop application for managing the system hosts file. Instead of editing the file by hand, you organize hosts entries into local, remote, group and folder collections and enable the set you need from the main window or the system tray.
- Is SwitchHosts free to use? What license does it have?
- SwitchHosts is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
- Is SwitchHosts still maintained?
- Actively maintained. The last commit to SwitchHosts was on Oct 20, 2026.
- What can I use SwitchHosts for?
- Switching between development, staging and production host mappings Pointing domains to test servers without editing the hosts file manually Subscribing to a shared remote hosts list that updates automatically Keeping hosts configurations backed up and restorable
- How do I install SwitchHosts?
- Install dependencies with npm: npm install Start the app in development mode: npm run tauri:dev Create a production build: npm run tauri:build
- Where can I get SwitchHosts?
- The source code and installation instructions are on GitHub: https://github.com/oldj/SwitchHosts
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Open-source screen recorder and editor for Mac, Windows and Linux that adds zooms, cursor polish and styled frames to demo videos.
An unofficial, Electron-based desktop app for YouTube Music with a plugin system for custom CSS and behavior changes.
A desktop image uploader that pastes or drags images, uploads them to image hosts like S3, GitHub, Imgur or Aliyun OSS, and copies the resulting link.
A distraction-free, offline desktop notes app for Windows, macOS and Linux, built with Electron and TypeScript, with no AI features, ads or tracking.
An Electron-based desktop browser for testing websites across many device previews at once, with mirrored interactions and an MCP server for AI agents.