Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

4 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

HOTS Hosts Banner

HOTS Hosts v2.0

A Fluent-Design desktop application for managing the Windows hosts file โ€” part of the HOTS Tools family.

License: GPLv3 Platform Python Qt Language


๐Ÿ“‹ Overview

HOTS Hosts is a lightweight, feature-rich Windows application that lets you view, edit, and manage the system hosts file through a clean, modern GUI โ€” no more manually navigating to C:\Windows\System32\drivers\etc\ and fighting with Notepad permissions.

Version 2.0 is a ground-up rebuild: the interface has moved from Tkinter to PySide6 with Fluent Design (QFluentWidgets), bringing a proper light/dark theme, custom accent colors, and a persistent side-navigation layout instead of pop-up dialogs.

HOTS Hosts is the first release under HOTS Tools โ€” a small line of no-nonsense Windows utilities.

Built as a personal hobby project, released free under GPLv3.


๐Ÿ“ธ Screenshots

Main Window

Main window โ€” table view with live search and entry management


Parental Control Panel

Parental Control โ€” category blocklists with Cloudflare Family DNS toggle


Privacy Panel

Privacy โ€” tiered telemetry controls with drift detection


โœจ Features

Core editing

  • ๐Ÿ“„ Real-time table view of all hosts entries โ€” active, disabled, and comments
  • โž• Add / Edit / Delete entries with a polished dialog
  • โป Enable / Disable entries without deleting them (toggles the # prefix)
  • ๐Ÿ” Live search & filter across IP, hostname, and comment columns
  • ๐Ÿ“‹ Bulk paste โ€” paste multiple IP hostname lines at once
  • ๐Ÿ”ƒ Column sorting by any field

Safety & backups

  • ๐Ÿ’พ Auto-backup before every save โ€” rotating archive of the last 15 backups
  • ๐Ÿ—‚ Backup Manager โ€” browse, restore, or delete any backup
  • ๐Ÿ‘ Diff preview โ€” see exact line-by-line changes before writing to disk
  • โœ… Post-save verification โ€” confirms the file was written correctly
  • ๐Ÿ”’ 20 000 entry limit โ€” blocks saves that would freeze Windows DNS Client

Import / Export

  • ๐Ÿ“ฅ Import any hosts-format .txt file
  • ๐Ÿ“ค Export to .txt (hosts format) or .csv (with Status, IP, Hostname, Comment columns)

Diagnostics

  • ๐Ÿ” Domain existence check โ€” queries Google/Cloudflare public DNS directly (in parallel, multi-threaded), bypassing the local hosts file; flags domains that no longer exist in DNS
  • ๐Ÿ›ก Malware scanner โ€” a heuristic engine covering well over a dozen risk signals, including:
    • Known system/payment domains redirected to a non-loopback IP
    • Windows Update / antivirus update domains being blocked
    • Entries redirecting to a public (non-private, non-loopback) IP
    • Mass-redirect patterns (many domains pointing at the same IP)
    • Hostnames that are raw IP addresses
    • Cyrillic/Unicode homoglyph characters and zero-width characters hidden in a hostname
    • Punycode (xn--) hostnames
    • High-entropy, DGA-style hostnames (randomly-generated-looking labels)
    • Typosquatting of well-known domains (fuzzy-matched against a known-safe list)
    • Suspicious TLDs, unusually deep subdomains, and brand-impersonation / long-digit / long-label naming patterns
    • Known-safe subdomains and CDNs are automatically whitelisted to cut down on false positives
    • A per-entry ignore list so confirmed-safe results don't keep re-appearing in future scans

Parental Control

  • ๐Ÿ›ก Built-in blocklist manager for 13 categories:
    • ๐Ÿ”ž Adult content ยท ๐Ÿฆ Twitter/X ยท ๐Ÿ“ธ Instagram ยท โ–ถ YouTube ยท ๐Ÿ‘ค Facebook
    • ๐Ÿ’ฌ WhatsApp ยท ๐ŸŽต TikTok ยท ๐ŸŽฎ Twitch ยท ๐Ÿ‘ป Snapchat ยท ๐Ÿ“Œ Pinterest
    • ๐Ÿค– Reddit ยท ๐Ÿ•น๏ธ Games ยท โ›” Torrent
  • Each category uses unique section tags โ€” categories never overwrite each other
  • Toggle any category on/off with one click; DNS cache flushed automatically
  • ๐ŸŒ Cloudflare Family DNS โ€” one-click enforcement of DNS-level adult content blocking (1.1.1.3 / 1.0.0.3):
    • Detects all active (operationally up) network interfaces natively via the Windows iphlpapi API (GetAdaptersAddresses) โ€” no netsh/PowerShell subprocess is spawned for detection, so it's instant and works identically regardless of Windows display language
    • Backs up original DNS settings per interface to %APPDATA%\HOTS Hosts\dns_backup.json before switching
    • Restores previous DNS (or falls back to DHCP) when Parental Control is disabled
    • State persists across HOTS sessions โ€” DNS remains protected even after the app is closed

โ„น๏ธ The telemetry/tracking-domain blocklist (previously listed as a 14th Parental Control category) now lives under Privacy, alongside the other telemetry tweaks โ€” see below.

๐Ÿ•ต๏ธ Privacy (formerly "Windows AntiSpy")

Completely rebuilt from a single on/off switch into a tiered, granular control center covering 26 individual system tweaks, organized into three levels:

  • Basic (13 tweaks) โ€” AllowTelemetry policy, DiagTrack and dmwappushservice services, Windows experimentation/telemetry, advertising ID, Bing/search-box suggestions, tailored experiences, Consumer Features, Delivery Optimization P2P sharing, Windows Recall, feedback notifications, CEIP
  • Medium (8 tweaks) โ€” firewall rules blocking CompatTelRunner.exe, devicecensus.exe, WerFault.exe, plus disabling scheduled tasks (Compatibility Appraiser, ProgramDataUpdater, Consolidator, UsbCeip, QueueReporting)
  • Advanced (5 tweaks) โ€” WerSvc / PcaSvc services, Activity Feed / Timeline, cross-device activity publishing and upload

Each level shows "{active} of {total} active", and every individual tweak can be expanded, reviewed, and toggled on its own.

  • ๐Ÿ“ก Known telemetry domains โ€” an additional hosts-file blocklist toggle (the domain list formerly surfaced under Parental Control) sits beneath the three tweak levels
  • ๐Ÿฉน Drift detection โ€” if Windows resets a protected setting (e.g. after a major update), HOTS flags it with a warning and lets you re-apply it with one click
  • ๐Ÿ›Ÿ System Restore integration โ€” create a Windows System Restore point with one click before applying changes, plus a one-click option to remove Windows' restore-point creation frequency limit if it's blocking you
  • Saves the exact pre-change state before touching anything, so every level can be fully reverted
  • Requires Administrator rights (UAC prompt on launch covers this)
  • Intentionally scoped to the highest-impact, most reliable tweaks โ€” not a comprehensive privacy suite

๐ŸŽจ Appearance

  • ๐ŸŒ— Light and Dark themes โ€” switch anytime in Options
  • ๐ŸŽจ 4 accent colors โ€” Gold, Red, Green, Blue
  • ๐Ÿงญ Fluent Design navigation โ€” persistent side panel instead of pop-up dialogs

๐Ÿ”„ Updates

  • ๐Ÿ”” Built-in update checker โ€” checks GitHub Releases and notifies you when a newer version of HOTS Hosts is available, with a direct link to download it

UI & UX

  • ๐ŸŒ 5 languages โ€” English (default), Polish, Franรงais, Deutsch, Espaรฑol โ€” switch in Options, saved across sessions
  • ๐Ÿ”‘ Password protection โ€” optional SHA-256 hashed startup password stored in the Windows Registry
  • ๐Ÿ“ Raw text view โ€” edit the hosts file directly like Notepad, with syntax highlighting
  • ๐Ÿ—ƒ Geometry persistence โ€” remembers window size and position
  • ๐Ÿ”ง File repair โ€” auto-fixes wildcard entries, removes duplicates and malformed lines
  • ๐Ÿงน Restore default โ€” replaces current hosts with Microsoft's clean default (backup created first)
  • ๐Ÿš€ Auto-elevation โ€” requests UAC Administrator rights on launch
  • ๐Ÿ”‚ Single-instance guard โ€” launching HOTS Hosts while it's already running switches focus to the existing window instead of opening a duplicate

๐Ÿ›ก๏ธ Parental Control โ€“ Known Limitations

The Parental Control module blocks domains at the system level using the Windows hosts file, combined with Cloudflare Family DNS (1.1.1.3 / 1.0.0.3). This approach is effective but has inherent limitations you should be aware of:

๐ŸŒ The "Moving Target" Problem (TikTok, YouTube, Facebookโ€ฆ)

Large platforms use hundreds of dynamically changing subdomains and CDN endpoints. A blocklist can never be 100% complete at any given moment.

  • Built-in lists are updated with each HOTS release to keep up with infrastructure changes.
  • You can add missing domains manually โ€” HOTS is first and foremost a hosts file editor. Map any bypassing domain to 0.0.0.0 directly from the main table.

โš ๏ธ Filters Not Working? Disable DNS-over-HTTPS in Your Browser

Modern browsers (Chrome, Firefox, Edge, Opera) include a feature called Secure DNS / DNS-over-HTTPS (DoH). When enabled, the browser sends DNS queries directly to an external encrypted server, completely bypassing the system hosts file.

To make HOTS parental filters effective, disable DoH in each browser's privacy/security settings:

  • Chrome / Edge: Settings โ†’ Privacy and security โ†’ Security โ†’ Use secure DNS โ†’ Off
  • Firefox: Settings โ†’ Privacy & Security โ†’ DNS over HTTPS โ†’ Off

๐Ÿ“ฑ Mobile Devices & VPNs Are Not Covered

The hosts file only affects the Windows PC it runs on. Phones, tablets, and any device using a VPN will not be subject to these rules.


โฌ‡๏ธ Installation

Option A โ€” Run the .exe (recommended)

  1. Download HOTS_Hosts_setup.exe (installer) or HOTS_Hosts.zip (portable, no install) from the Releases page
  2. If you downloaded the portable .zip, extract it first, then run the .exe inside
  3. Double-click โ€” UAC will prompt for Administrator rights
  4. Done. No further setup required.

System requirements: Windows 10 or Windows 11, 64-bit. Windows 7/8/8.1 and 32-bit systems are not supported.

โš ๏ธ "Windows protected your PC" / SmartScreen warning

Since HOTS Hosts is a small independent project without a paid code-signing certificate, Windows SmartScreen may show a warning like "this app isn't commonly downloaded" the first few times it's downloaded. This is expected and does not mean the file is unsafe โ€” it simply means Microsoft hasn't yet built up a download reputation for it (this happens to every new, unsigned .exe, regardless of safety).

To proceed:

  1. If you see a screen titled "Windows protected your PC", click More info, then click Run anyway
  2. If you see the Edge/browser download warning shown above, click the "โ€ฆ" (more actions) menu next to the downloaded file โ†’ Keep โ†’ Show more โ†’ Keep anyway

If you'd rather verify the file yourself first, you can always build it from source instead โ€” see Option B below โ€” or inspect the full source code in this repository.

Option B โ€” Run from source

Requirements: Python 3.10+, PySide6, PySide6-Fluent-Widgets

pip install PySide6 "PySide6-Fluent-Widgets[full]"
git clone https://github.com/darsono6/HOTS.git
cd HOTS
pythonw -m hosts_editor

โš ๏ธ Must be run as Administrator โ€” the hosts file is write-protected by Windows.


๐Ÿ—‚ Project Structure

icon.ico                    # Windows Explorer/shortcut icon
hosts_editor_launcher.pyw   # Single-instance guard + admin elevation entry point (build target)
hosts_editor/
โ”œโ”€โ”€ __main__.py          # Entry point โ€” UAC elevation, password prompt, language init
โ”œโ”€โ”€ app.py                # Main window (Fluent navigation shell)
โ”œโ”€โ”€ core.py               # Data logic โ€” parse, save, import/export, DNS, parental control
โ”œโ”€โ”€ core_antispy.py       # Privacy engine โ€” services, firewall rules, tasks, registry tweaks
โ”œโ”€โ”€ core_restore.py       # System Restore point creation & frequency-limit removal
โ”œโ”€โ”€ constants.py          # Theme colors, accent presets, paths, settings load/save
โ”œโ”€โ”€ widgets_qt.py         # Reusable Qt/Fluent UI components โ€” buttons, dialogs, pages
โ”œโ”€โ”€ dns_utils.py          # DNS management โ€” native interface lookup, Cloudflare Family DNS orchestration
โ”œโ”€โ”€ i18n.py                # Multilingual string system (EN / PL / FR / DE / ES)
โ”œโ”€โ”€ logo.png / logo.ico / logoS.png / logo1.png
โ”œโ”€โ”€ blocklists/           # Plain-text domain lists for Parental Control & telemetry blocking
โ”‚   โ”œโ”€โ”€ adult.txt
โ”‚   โ”œโ”€โ”€ telemetry.txt
โ”‚   โ”œโ”€โ”€ youtube.txt
โ”‚   โ””โ”€โ”€ ...
โ””โ”€โ”€ dialogs/
    โ”œโ”€โ”€ entry_dialog.py        # Add / Edit entry form
    โ”œโ”€โ”€ diff_dialog.py         # Diff preview before save
    โ”œโ”€โ”€ backup_page.py         # Backup Manager
    โ”œโ”€โ”€ diagnostics_page.py    # Domain check & malware scan
    โ”œโ”€โ”€ parental_page.py       # Parental Control panel
    โ”œโ”€โ”€ privacy_page.py        # Privacy / telemetry control center
    โ”œโ”€โ”€ export_dialog.py       # Export to .txt / .csv
    โ”œโ”€โ”€ language_dialog.py     # Language selection
    โ”œโ”€โ”€ accent_dialog.py       # Accent color picker
    โ”œโ”€โ”€ support_page.py        # Support / donate window
    โ”œโ”€โ”€ about_page.py          # About & update checker
    โ”œโ”€โ”€ password_dialog.py     # Set / verify startup password
    โ””โ”€โ”€ _*.py                  # Shared/internal helpers for the pages above

๐ŸŒ Multilingual Support

The interface language can be changed in the Options โ†’ Language panel. The selected language is saved to %APPDATA%\HOTS Hosts\settings.json and applied on the next launch โ€” including the startup password prompt.

Code Language
en English (default)
pl Polski
fr Franรงais
de Deutsch
es Espaรฑol

All UI strings, dialogs, error messages, column headers, and system comments (e.g. Parental Control entries in the hosts file) are fully translated.


โš ๏ธ Disclaimer

HOTS Hosts is provided in good faith but without any warranty. The author is not responsible for any damage, data loss, system issues, or other consequences resulting from the use of this application. Modifying the hosts file affects system-level network resolution โ€” use with care. You use this software at your own risk.


โค๏ธ Support

If HOTS Hosts saves you time or you simply want to say thanks:

Website: hotstools.com

PayPal: paypal.me/darsonodark

Support: hots.support@gmail.com

No registration required. Any amount is appreciated.


๐Ÿ“„ License

GNU General Public License v3.0 ยฉ 2026 Darsono