I build things for the web. This is a tidier version of my regular digital playground: here, you'll find professional projects, personal interests, and some of the stranger products of my experimentation.
or reach me directly at mehrezat.abbas@gmail.com
I'm a developer and designer based in Rapid City, South Dakota, with a BA in Computer Science from Claremont McKenna College and Harvey Mudd College in Southern California. Day to day, I work full time on internal web systems for a contracting company, which means a lot of full-stack ownership across a consistent stack of C#, .NET, and Vue.
Outside of that, I design and build websites for small businesses and creative organizations, and I take on freelance and collaborative work — especially projects with room for unconventional ideas. I'm also interested in continuing the remote-sensing research I started in undergrad (light emissions from vegetation as a proxy for photosynthesis and CO2 intake), and — someday — partnering with National Geographic to help document endangered cultures and ecosystems.
I'm also drawn to ethnography and oral history — sitting down with people and asking how their world has changed. That interest carried a Fulbright proposal on climate and cultural change in Kyrgyzstan to the finalist round; further down is the version of that project that actually happened.
I care about software that's careful and legible, but I don't take it too seriously — most of what I build for fun is purposefully a little strange. More on that below.
A communal mood-journaling app with accounts, a daily check-in flow, and a history view for tracking how the world's emotions have shifted over time. Built solo for a 5C (Claremont Colleges) hackathon against roughly 100 entrants — won the Health & Humanity track.
My first project as an intern at Omnitech, built under a deliberate constraint: plain HTML, CSS, and JS — no frameworks, no WebSockets. Players take turns placing letters on a shared grid; first to spell a valid 4+ letter word wins. Multiplayer turn state is tracked in a SQL table, and it mostly holds up — though a known race condition can occasionally knock two players out of sync.
A counter-culture art collective in Rapid City — "the Artistic Edge Of Nihilism" — built to push back against the commercialization of art with work meant to disrupt routine rather than decorate it. Plain HTML, CSS, and JS, with an events page, a blog, a public forum with email verification, a members-only chat board gated by role and level, and an admin panel for managing content and blocking abusive non-member posters.
A one-person media business testing the market for AI-generated ads and training content, run by a veteran now working in equipment-repair sales. Also plain HTML, CSS, and JS, with video hosted and streamed directly through Cloudflare Stream instead of embedded from YouTube, plus an admin panel for managing contact submissions and video content.
A walking sheep sprite for the ZX Spectrum, written in C and run through the Retro Virtual Machine emulator — no higher-level tools, since the images had to be pushed directly into memory as raw bytes to render at all. The real constraint was space: after a lot of work getting anything into memory correctly, there was only ever room for 4 rotating frames.
An early-2000s dating-cult ad — the guestbook is a real, working feature: a Supabase-backed table with input validation, live inserts, and a reload on submit. Feel free to sign it!
A couple of smaller pieces in the same aesthetic register as the two above. No real point, just a creative interest I keep returning to.
A side-scrolling narrative game rendered in a photo-collage art style, cast entirely with anthropomorphic rats. A young man returns to his small Midwestern hometown to look into a local ghost problem, and ends up pulled into the ghost realm altogether: a place full of cowboy spirits he has to set free, one by one, by uncovering what they're each hiding.
Structurally it's an adventure game — people to talk to, clues that log into a journal, connections to draw between them. The centerpiece is a confrontation mechanic built for the big reveals: six clue "bullets" loaded into a timed, shootout-style standoff, where picking the right one under pressure is what cracks a character's guard and gets you the truth.
Take a look →