Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 

Repository files navigation

SpydirVPN - free WireGuard access via Cloudflare WARP

Developed by SPYDIRBYTE

Python CustomTkinter License

Free personal WireGuard access. One click, no accounts.


What it does

Open the app, hit "Generate my config," get a private WireGuard config registered on Cloudflare's free WARP network. Watch it happen, an animated tunnel visual walks through generating the keypair, registering with Cloudflare, and building the file, then save it, copy it, or scan the QR code straight into the WireGuard app on your phone. No terminal, no command line, no accounts.

A few things worth knowing about:

  • QR code: every generated config shows up as a scannable QR code, open the WireGuard app on your phone and scan it directly instead of transferring a file
  • History: past configs are kept locally (under ~/.spydirvpn/) so you can come back and re-download or re-copy one without generating a fresh identity every time
  • Better defaults in the config itself: dual DNS resolvers (1.1.1.1 and 1.0.0.1), an MTU tuned to avoid fragmentation issues over WARP, and a keepalive interval so the tunnel holds up better behind NAT and on mobile networks

Download

Grab the app for your OS from the latest release, no Python needed, it's a single file:

  • Windows: spydirvpn-windows.exe, just double-click it
  • macOS: spydirvpn-macos, may need chmod +x spydirvpn-macos first
  • Linux: spydirvpn-linux, same, chmod +x spydirvpn-linux

Or run it from source

Needs Python 3.10 or newer.

git clone https://github.com/spydirbyte/spydirvpn.git
cd spydirvpn/spydirvpn
pip install -r requirements.txt
python app.py

What it actually is

Not gonna dress this up. SpydirVPN doesn't run its own VPN backend, it automates the same registration flow that the open source wgcf project and Cloudflare's own 1.1.1.1 app use under the hood. Generate a keypair, register the public half with Cloudflare, hand you back a working config, all locally on your machine.

Your traffic ends up encrypted to Cloudflare's edge, same as if you'd installed their app yourself.

One thing to know: that registration endpoint isn't something Cloudflare officially documents or supports for this kind of use. It's worked reliably so far, but they could change it or start rejecting requests without warning. If generation fails, the app shows you and lets you try again.

Setting up WireGuard

Once you've got your .conf file, grab the official WireGuard app for your platform (Windows, macOS, Linux, iOS, Android all have one), import the file, connect.

Building the executable yourself

cd spydirvpn
pip install -r requirements.txt pyinstaller
pyinstaller spydirvpn.spec

The built app lands in spydirvpn/dist/.

Releasing new builds

Push a tag starting with v and .github/workflows/release.yml builds Windows, macOS, and Linux executables and attaches them to a GitHub Release automatically.

git tag v1.0.0
git push origin v1.0.0

Structure

.
├── spydirvpn/
│   ├── app.py             # the GUI itself, CustomTkinter
│   ├── crypto_utils.py    # X25519 keypair generation
│   ├── warp_client.py     # Cloudflare WARP registration + config building
│   ├── tunnel_canvas.py   # the animated tunnel visual
│   ├── history.py         # local history of generated configs
│   ├── spydirvpn.spec     # PyInstaller build config
│   ├── requirements.txt
│   └── assets/            # app icon
├── .github/workflows/release.yml
└── assets/banner.png

A note on the local history

Past configs, including their private keys, are stored unencrypted in ~/.spydirvpn/history.json so you can come back to them later. Treat that folder the way you'd treat a password manager's file, don't share it, don't sync it to somewhere public. Delete entries from the History screen in the app if you don't want them kept around.

Scope and limits

  • This gets you Cloudflare's free WARP tier, not WARP+, not custom routing, not paid throughput
  • Cloudflare's terms of service still apply to the WARP network itself, this project doesn't change that
  • Treat your generated config like a password. Anyone who has it can use your tunnel

License

MIT

About

SpydirVPN is a desktop app that generates a personal WireGuard config registered on Cloudflare's free WARP network. Animated interface, QR code for mobile import, local history of past configs. No accounts, no backend, everything runs on your own machine.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages