Projects
A 5-tier DevOps learning path I built hands-on. Each tier builds on the last — from running a single container to a fully automated cloud pipeline.
The core concept: I can destroy and recreate my entire environment in minutes.
The Origin Story
Steam Deck / LinuxBefore any of this was intentional, I spent two years bending a Steam Deck to my will — emulation, Lutris, Bottles, Decky plugins, and whatever else I could get running on Arch Linux. This is where I learned to refuse limitations.
Containerization
DockerJellyfin media server running on a dedicated Asus machine via Docker Compose.
Infrastructure as Code
Terraform + AWSTerraform config that provisions a free-tier EC2 instance running Apache, with full create/destroy/rebuild cycle.
CI/CD
GitHub ActionsFlask API with automated GitHub Actions pipeline — runs tests on every push, builds and verifies Docker image.
Configuration Management
AnsibleAnsible playbook that installs nginx, deploys a custom homepage, and verifies the server responds — all idempotently.
Full Pipeline
All CombinedOne deploy script that provisions EC2 with Terraform, then uses Ansible to SSH in, install Docker, build a Flask app, and run it — with GitHub Actions CI on every push.
Side Projects
Gaming History Database
Python750+ games across 20 platforms spanning 1983–2025. Python CLI tool that searches the RAWG API, manages a CSV database, and auto-generates a dark-themed 23-tab Excel workbook with Metacritic color coding and duplicate protection.
Jellyfin Media Server
Self-HostedSelf-hosted media server running on dedicated hardware via Docker. Full library management with movies, shows, and concerts — my own personal streaming service.
This Website
Astro ↗Built from scratch with Astro and Tailwind CSS. No templates, no themes — just code.