Personal projects · 2016—2026

A decade of nights and weekends, indexed.

My personal app ecosystem, ideas turned into products, one project at a time. Some are live and open to anyone. The rest are prototypes, and labelled as such.

11PROJECTS
04LIVE
02IN DEV
2016FIRST ENTRY
2026FOUR LIVE

Finny

● LIVE · finny.gaher.dev Flutter Web · Go
PostgreSQL · Keycloak · PWA
Your money, the whole picture. A personal-finance tracker for income, expenses, cashflow, and investments — with balance and cashflow graphs, portfolio performance, compound-growth projections, and CSV export.
Finny app icon on its navy brand background

HabiCrew

● LIVE · habicrew.gaher.dev Flutter Web · Go
PostgreSQL · Keycloak · PWA
Build habits that stick. A full-stack habit tracker with social features, challenge rooms, and 52-week completion heatmaps. Daily, weekly, or custom schedules — HabiCrew keeps you accountable without the guilt trips.
HabiCrew app icon on its violet brand background

Memspeak

● LIVE · memspeak.gaher.dev Flutter Web · Go
PostgreSQL · SM-2 · PWA
Learn anything, remember everything. Spaced repetition flashcards powered by the SM-2 algorithm. Build and share decks, track your daily streak, and climb the leaderboard.
Memspeak app icon on its warm amber brand background

Longhouse

● LIVE · game-sm.gaher.dev Flutter Web · Go
Docker · SQLite
Host, gather, play. A dashboard for spinning up, monitoring, and controlling self-hosted Valheim and Wreckfest servers — start, stop, and inspect them from one panel.
Longhouse app icon on its forest-green brand background
2025

SMSender

ANDROID · COMING TO PLAY STORE Flutter · Kotlin
Android · SMTP
Never miss a text again. SMSender intercepts incoming SMS messages on Android and forwards them to any email address in real time — perfect for catching OTPs and alerts on a secondary SIM without ever picking up the phone.
SMSender app icon on its indigo brand background
2024

VampChrono

IN DEVELOPMENT Flutter Web · Go
WebSockets
Run your campaign, together, online. A virtual tabletop for playing tabletop RPGs with friends remotely. Start game sessions, create and manage characters, progress the story, display maps, switch scenes, and share reference material — with every change syncing live for everyone in the match.
VampChrono splash graphic — a Vampire Chronicles branded d20 die with an ankh symbol and a "TTRPG Online" banner
2023

MutantMonsters!

PROTOTYPE · NO LONGER HOSTED Unity · C#
3D Infinite Runner
Run. Dodge. Don't look at the sky. A 3D infinite runner built in Unity — dodge monsters as the run gets faster and more chaotic with every second you survive. Push far enough and something unsettling rises on the horizon: the moon.

TomoGol

IN DEVELOPMENT Flutter Web · Go
PostgreSQL · Keycloak · PWA
Track. Analyze. Improve. A full-stack futsal match tracker — ELO-rated matches, persistent teams and rosters, court management, and match scheduling, with rankings and personal stats tracked automatically.
TomoGol app icon on its emerald-on-black brand background
2017UNREAL ENGINE STUDIES

Passageway

PROTOTYPE · NO PLAYABLE BUILD Unreal Engine 4
Level Design · Lighting
One hallway, two moods. A map/level-design study built in Unreal Engine 4 — a stylized apartment corridor with wayfinding signage, numbered doors, and an elevator at the end of the hall. Built out as two full lighting passes on the same space, shown side by side: a sunlit day version and a moody, teal-lit night version.

My Home

PROTOTYPE · NO PLAYABLE BUILD Unreal Engine 4
Interior Design · Lighting
Furnishing a home, room by room. An interior design exercise in Unreal Engine 4 — a fully furnished home walkthrough spanning a living room, dining area, and connecting rooms, dressed with props, artwork, and warm baked lighting. Built to keep sharpening interior environment art and lighting skills in UE4.
2016WHERE IT STARTED

Runny

PROTOTYPE · NO LONGER HOSTED Unity · C#
2D Platformer
Grab, jump, don't fall. An infinite side-scroller built in Unity — dash across procedurally placed platforms, grab oranges for points, and rack up bonus points with every jump. One missed landing and it's game over.