online kadeslab.com

Hi, I'm Cade.
I build things
that work.

Self-taught developer building web apps, games, and self-hosted infrastructure — usually because I want to use it myself.

Location [REDACTED]
Status Open to work
GitHub @xnucade
cade@kadeslab: ~ zsh — interactive
~ ❯
this terminal works — try help
TypeScript ·JavaScript ·Python ·C# ·Docker ·Cloudflare Workers ·s&box ·Raspberry Pi ·Linux ·Self-Hosting ·Networking ·Swift ·
01 · selected work

Things I've built

PRJ-001 · 2026 Live

Vortex

A torrent search front-end with a Material You 3 aesthetic. Scrapes public tracker APIs server-side via Cloudflare Workers, sidestepping CORS entirely. One clean interface to search across multiple sources, instantly.

Cloudflare Pages Workers JavaScript Material You
PRJ-002 · 2026 Live

Home Lab

A self-hosted server stack on a Raspberry Pi 5. AdGuard for network-wide ad-blocking, Vaultwarden for passwords, Nextcloud for storage — all exposed via Cloudflare Tunnel with zero open ports. Full breakdown below.

Raspberry Pi 5 Docker Cloudflare Tunnel Vaultwarden Nextcloud
PRJ-003 · 2026 In Development

Cart Siege

A two-team siege game built in s&box — Facepunch's spiritual successor to Garry's Mod. Attackers pilot golf carts with mounted cannons; defenders hold the castle with RPGs. Destructible environment, arcade chaos, intentionally ridiculous physics.

s&box C# Game Design
02 · infrastructure

The Lab

$ docker compose ps — all systems nominal uptime: —
🌐 Internet the scary part Cloudflare Edge Access · OTP auth · WAF *.kadeslab.com encrypted tunnel zero open ports Raspberry Pi 5 8GB · 256GB SSD Docker via Dockge /opt/stacks/*
AdGuard Home
DNS-level ad blocking for the whole network
:host
Vaultwarden
Self-hosted Bitwarden — passwords & TOTP
:443
Nextcloud
File sync & storage, MariaDB-backed
:8080
Dockge
Compose stack management UI
:5001
Dashy
Custom dashboard, one pane of glass
:4000
cloudflared
Outbound-only tunnel to the edge
:∅
Hard-won lessons: always use absolute paths under /opt/stacks/ (Dockge hates relative ./config), always test from a real client, and Vaultwarden flat-out refuses to run without HTTPS — the tunnel solves that for free. Internal traffic stays on the LAN via AdGuard DNS rewrites; external access is gated by Cloudflare Access one-time PINs.
03 · shipped

Apps & downloads

Shift
Small habits. Lasting change.
A daily check-in system for breaking bad habits and building good ones. Tracks streaks, keeps you honest, and stays out of your way.
iOS 16+ · Free App Store ↓
In the pipeline
More on the way.
Future apps and tools will appear here as they're shipped. Always something cooking.
— · —

$ echo "let's build something"

Get in touch.