- Add OpenWrt 23.05+ requirement to all README files - Expand privacy statement to clarify no telemetry/analytics and data only goes to router, provided URLs, and official package sources - Update smoke check command in CONTRIBUTING and all READMEs to include pytest: `python -m compileall -q src && pytest -q` - Minor formatting improvements
6.9 KiB
Re:Sputnik
Desktop app that sets up and manages Re:HomeProxy on an OpenWrt router — over SSH, without touching a terminal or LuCI.
You enter the router's address and password; the app does the rest in a graphical wizard: installs the proxy backend and a core, imports your servers, sets up routing and DPI bypass, and lets you manage Wi-Fi, diagnostics and security afterwards.
Re:Sputnik does not bundle any proxy cores — it installs them onto the router from their official sources, and talks to the router only over SSH/RPC (
ubus call luci.homeproxy.*,uci, the package's own scripts). At its core it is a generic "install + configure software on OpenWrt" platform; Re:HomeProxy is just the first recipe.
Download
Grab the latest build from the Releases page — no installer. Requires a router on OpenWrt 23.05 or newer.
- Windows —
Re-Sputnik-windows-x64.exe, double-click. - macOS (Apple Silicon) —
Re-Sputnik-macos-arm64.zip, unzip and dragRe-Sputnik.appto Applications. - Linux —
Re-Sputnik-linux-x86_64.AppImage/-aarch64.AppImage,chmod +xand run.
Builds are currently unsigned. Windows SmartScreen warns (More info → Run anyway). On macOS the first launch is blocked — open System Settings → Privacy & Security, scroll to the Security section, and click Open Anyway next to the Re-Sputnik message (confirm with Touch ID / password). You only need to do this once.
Features
- Install — detects the router's architecture and package manager (opkg/apk), installs Re:HomeProxy and a proxy core (hiddify-core or sing-box-extended), and can pre-download packages on the PC for routers on throttled/restricted networks.
- Servers — import subscriptions (sing-box/Hiddify JSON and Xray/V2Ray JSON), share-links
(VLESS/Reality, Hysteria2, Trojan, Shadowsocks…),
vpn://, and.conffiles (WireGuard/AmneziaWG); URLTest speed pools. - Routing — ready-made modes (Russia / China / Iran / global) over the Re:filter and Russia Inside rule-sets.
- DPI bypass — built-in ByeDPI (47 presets) and Zapret 2 (36 presets), plus a strategy tester that probes several sites in parallel and shows what actually works on your ISP.
- Manage — diagnostics (core status, DNS, routes), Wi-Fi / LAN / DHCP, passwords and SSH keys, backup & maintenance, SQM / UPnP.
- Languages — Russian, English, Persian, Chinese
Three ways in
- ⚡ Step-by-step — a linear wizard that walks a non-technical user through internet, installation, servers, and verification.
- ⚙ Advanced — free navigation over the sections (Servers, Rules, Diagnostics, Anti-DPI, Core, Security…) for hands-on management.
- 📦 Pre-install packages — download on the PC and push to the router, to install with no internet on the router itself.
Any mode picks up the router's current configuration instead of starting from scratch.
Architecture (short)
UI (customtkinter) wizard + settings screens; drives the setup flow
engine/* per-feature logic (install, nodes, rules, ByeDPI, Zapret, diagnostics…)
RouterClient (paramiko) the ONLY door to the router: built-in scripts, ubus, uci
Secrets (keyring) router credentials in the OS keychain
Commands run one at a time per connection, so concurrent requests can't get dropped by the router's SSH daemon. No telemetry or analytics: the app talks only to the router you connect it to, any subscription/update URL you provide, and official package sources (GitHub, OpenWrt) when installing software. Credentials never leave your machine.
Tech stack
Pure Python + a few libraries — no web/HTML/CSS/JS:
| Layer | Library |
|---|---|
| UI | customtkinter (Tk) |
| Router comms | paramiko (SSH) |
| Secrets | keyring (OS keychain) |
| Icons | Lucide/Phosphor (UI) + Simple Icons (brands), baked SVG→PNG at build time |
Develop
python -m venv .venv
. .venv/Scripts/activate # Windows: .venv\Scripts\activate
pip install -e ".[dev]"
python -m re_sputnik
python -m compileall -q src && pytest -q
CI runs the tests on every push (test.yml); on-demand multi-platform
builds live in build.yml; tagged releases (vX.Y.Z) build all
platforms and publish to the Releases page via release.yml.
See CONTRIBUTING.md for the contribution flow (Developer Certificate of Origin).
Trademark notice
Not affiliated with or endorsed by YouTube, Telegram, Discord, Meta, or Hiddify. Service logos are trademarks of their respective owners and are used only to identify the services they represent.
Support the project
If Re:Sputnik is useful to you, a ⭐ helps — or support development directly:
Questions and updates — Telegram.
License
Re:Sputnik is free software under the GNU General Public License v3.0 (GPLv3): you may
use, study, modify, and share it under those terms. See LICENSE for the full text
and NOTICE for third-party attributions.
Re:Sputnik is a separate program from Re:HomeProxy (also GPL-licensed): it talks to the
router over SSH/RPC and does not bundle or link Re:HomeProxy's source. All bundled third-party
dependencies are under permissive or weak-copyleft licenses (MIT/BSD/HPND/MPL-2.0; paramiko under
LGPL-2.1), compatible with the GPLv3. Contributions are accepted under the Developer Certificate
of Origin — see CONTRIBUTING.md.