What it is
Multi-layer school bypass. DoH+SOCKS5+HTTP CONNECT.
Version history
Straight from the project’s own card data — what each version added.
Single proxy.
DoH added: encrypted DNS.
Multi-layer fallback.
By the numbers
Measured from the real working folder ~/Documents/projects/network-tools/HKPCBypass — not a claim, a count.
Mostly: Python ×1 · binary assets ×1 · HTML ×1
What broke, and what I’d change
Not written yet. This is the part only I can write — what actually went wrong, and what I’d do differently. It lives in builds/reflections/hkpcbypass.md (see _TEMPLATE.md); as soon as that file has words in it, this section fills in on the next build.
Everything else on this page — the spec, the version history, the file counts — is generated from the project’s own build notes and files, so nothing here is guesswork.
Build spec
The project’s own build notes, rendered. Open the raw .md ↗
Show the spec
HKPCBypass
Category: Software & Apps · Status: Done
Multi-layer school bypass. DoH+SOCKS5+HTTP CONNECT.
Stack / Tools: Networking, Proxy, DoH, Python
Build path:
- V1 — Single proxy.
- V2 — DoH added: encrypted DNS.
- V3 — Multi-layer fallback.
Location: ~/demos/hkc-bypass.html
Multi-layer school network bypass: DoH (encrypted DNS) + SOCKS5 + HTTP CONNECT with auto-fallback between layers. Python.
Where it lives
- Source folder:
~/Documents/projects/network-tools/HKPCBypass - Artefacts on the site: 8 files · 534 lines of text · 48 KB
Stack
- binary ×2 · Shell ×1 · Python ×1 · plist ×1
- external tools invoked:
python3
What's in the code
templates/newtab.html— 253 lines (HTML)native_app.py— 245 lines (Python)HKPCBypass.app/Contents/Info.plist— 33 lines (plist)start.command— 3 lines (Shell)HKPCBypass.app/Contents/Resources/icon.png— 1 KB (binary, binary — not line-counted)HKPCBypass.app/Contents/Resources/AppIcon.icns— 22 KB (binary, binary — not line-counted)
Verified in the Python source
- classes:
APIHandler,AppDelegate,ConnectProxy - functions:
_detect_net,_opener,_proxy_off,_proxy_on,doh_resolve,main,start_api
_Spec generated from the project's own files on 2026-10-22 (gen-project-specs.py). Everything above was read from the listed files — file counts, line counts, names, routes, headings and script comments. No description was invented._