uses.riverxia.sh
the tools, languages and infra i actually use
desktop & shell
- arch + hyprland — daily driver, tiling wm (fedora userland with mostly arch components)
- ghostty — terminal. i do basically everything in it
- fish + zoxide — shell, and `z` instead of `cd`
- neovim — custom config tuned for speed and competitive programming (see Neovim Dots on the projects page)
- mpv, ffmpeg, yt-dlp — media, from the terminal
languages & tooling
- python + uv — scripts, CTF tooling, this site's build
- rust + cargo — cctf.rs, bromine-tui, anything that should be fast and correct
- c++ — competitive programming
- js/ts + bun — web stuff
- go — game server work
- git + gh — obviously
ctf toolbox
- ida pro + binary ninja — reversing, personal licenses for both
- pwntools, z3, sage — the usual crypto and pwn kit
- binwalk, zsteg, exiftool — forensics and stego triage
- netcat, curl, mitmproxy — web and traffic poking, all from the terminal
infra
- cloudflare workers — all four sites here are static-asset workers, plus dns
- ovh vps — mail (postfix, dovecot, rspamd, opendkim, roundcube) and dev stacks
- docker + kubernetes — per-team challenge instancing for cctf.rs
- tailscale — private networking between machines
this site
- python-markdown + pygments — posts are markdown files, built to static html
- katex — math rendered at build time, no client js
- make — one command builds, checks, deploys and verifies everything