Software engineer focused on systems programming, lightweight container tooling, network proxies, and developer automation. I build tools with minimal runtime overhead, automated CI/CD pipelines, and practical self-hosted solutions for home automation and developer velocity.
All add-ons can be installed by adding this custom repository to your Home Assistant Add-on Store:
https://github.com/datf/hassio-addons
-
Caddy Custom (
hassio-caddy-custom)
A modern, TLS-ready HTTP server and reverse proxy add-on for Home Assistant running Caddy 2.- Dynamic Plugin Builds via xcaddy: Compiles custom Caddy plugins (e.g. Cloudflare DNS, DuckDNS, custom middleware) directly inside the add-on using an integrated S6-overlay builder service—no custom Dockerfiles or manual builds required.
- Build Caching: Tracks configured plugins, Go, and Caddy versions; builds only when changes are detected and activates the updated binary on container restart.
-
Dante to WireGuard (
app-dante-to-wireguard)
Exposes a WireGuard VPN tunnel as a local SOCKS4/SOCKS5 proxy port on your network.- Client-Free VPN Routing: Routes traffic from local devices, scripts, or browsers through WireGuard without requiring VPN software on individual client devices.
- Profile Rotation & Fail-Safe Routing: Sequentially rotates through multiple WireGuard configs (
wg0.conf,wg1.conf, ...) on restart, binds proxy egress strictly to the VPN interface to prevent IP leaks, and clamps MTU to prevent packet stalls.
-
Dante SOCKS Proxy (
app-dante)
A robust SOCKS4/SOCKS5 forward proxy server running natively inside Home Assistant.- Flexible Routing: Supports custom
sockd.confrouting rules and automated system-level credential provisioning for authenticated proxying.
- Flexible Routing: Supports custom
-
adb-runner
An ultra-lightweight (<20 MB) container image providing the latest Android Debug Bridge (adb).- Minimal Footprint: Replaces bulky Android SDK command-line tools and Java runtime dependencies with a clean Alpine-based container.
- Multi-Arch & Auto-Updating: Pre-built for
linux/amd64andlinux/arm64. Automatically tracks upstream Alpine package updates via Renovate and GitHub Actions. - Zero Host Pollution: Ideal for wireless debugging, sideloading APKs, and headless CI/CD execution without local SDK installations.
-
copier-runner
A self-contained, Alpine-based container environment for Copier project templating.- Integrated Toolchain: Bundles Python 3, pip, Node.js, pnpm, and Git to execute template lifecycle hooks out of the box.
- Permission Handling: Matches host UID/GID and mounts local directories so generated files retain correct ownership on the host.
-
webos-discover
A fast CLI tool in Go to discover and inspect LG webOS Smart TVs on local networks.- Dual-Protocol Discovery: Scans local subnets concurrently using mDNS (
zeroconf) and SSDP/SDDP queries. - Zero-Auth Hardware & OS Inspection: Extracts hardware model, friendly name, MAC, UDN, and firmware, mapping internal LG codenames against an embedded database of 70+ webOS releases (2014–present) to identify consumer marketing versions and release years. Also supports authenticated SSAP WebSocket queries.
- Dual-Protocol Discovery: Scans local subnets concurrently using mDNS (
-
SVG Marquee Generator (
svgmarquee)
A dynamic Go service that generates seamlessly looping, animated SVG marquees for GitHub READMEs—powering the header banner above.- Automated GitHub Actions pipelines with test verification and automated release binary packaging.
-
Calc LLC
An interactive Svelte SPA deployed on GitHub Pages calculating optimal gameplay strategies for Coal LLC using dynamic programming.- Features automated CI and CD pipelines with integration tests, containerized development environments (Podman/Docker), and Husky pre-commit checks.
-
Rocket League Mods & BakkesMod Plugin Template V2
C++ modding boilerplate and automation for Rocket League.- A repository template configured with MSBuild SDK tooling, project boilerplate, and automated GitHub Actions workflows releasing specification-compliant zip packages.