Pi‑hole + Tailscale Private DNS Network
Set up a self‑hosted Pi‑hole instance on a Raspberry Pi and integrated it with Tailscale
to create a secure, encrypted, remote‑accessible DNS filtering system. Configured
MagicDNS, ACLs, and subnet routing to allow ad‑blocking and DNS privacy across all
personal devices, even outside the home network.
Multiplayer Connect 4 (Raw Sockets Networking)
Built a two‑player Connect 4 game using low‑level TCP socket programming. Implemented custom
client‑server communication, turn synchronization, and game‑state transmission using the
csapp.h and csapp.c wrappers from the CS:APP textbook. Designed a lightweight
protocol to handle moves, validation, and win‑condition detection over the network without
relying on external libraries.