Projects
Software, hardware, and everything in between.
sirna: Destroy the Key, Not the Copy
projectThe successor to otm. otm keeps a master key on the server, so the server can decrypt everything it holds — not patchable, because it is the shape of the design. sirna never lets the key reach the server at all.
tmprl: A Temporal Client for the Keyboard
projectA terminal client for Temporal, aiming at parity with the web UI. Four days old: the gRPC layer exists, the TUI does not. This is what it is honest to claim at that stage.
v-pipeline: Renting a GPU per Job, Not per Hour
projectA personal video generation pipeline — the app and its files live in the homelab, the GPU is rented on RunPod Serverless and dies the moment a job finishes. Notes on idempotency, dry runs, and why restarting a worker can make you pay twice.
Tombakan: An AR Spearfishing Game That Teaches Fish
projectA Unity AR game where you place a water surface in your actual room and spear the fish matching a target colour. Seven weekly iterations, a tester report each time, and a scope that grew from a colour drill into a marine-life learning game.
fate-studio: Seeing and Driving Statecharts in the Browser
projectA viewer and live simulator for fate statecharts — send events, fire timers, resolve invocations, and watch the active state change over Server-Sent Events. One static binary, no outbound requests at all.
fate: A Statechart Engine for Go
projectHarel statecharts in Go — hierarchy, parallel regions, history, guards and delayed transitions. Zero dependencies, deterministic, and snapshots that restore exactly, including inside Temporal workflows.
Lemme
projectLemme is an AI-assisted quiz app. Users upload screenshots of quizzes, OCR extracts the question text, and multiple LLM providers generate candidate answers along with their reasoning...
gostudentubl
projectAutomated attendance runner for Moodle-based courses with scheduled execution.
A Plane-Geometry Android App (CLI-friendly)
projectA simple Android app built for educational purposes. Calculates the area and perimeter of basic 2D shapes like squares, rectangles, and triangles.
Workspacebook: A Campus Mobile Client in Flutter + Supabase
projectA Flutter app for campus use with Supabase for auth and backend — including the OAuth flow that has to be reconfigured every time the environment moves.
wa-bot-notif
projectWhatsApp notification service — Go + whatsmeow.
otm: One-Time Messages
projectPaste a message, get one link, and the link dies once it's opened. Go + chi + SQLite, with layered encryption: a random key per message, and that key itself encrypted with a master key.
busgo: A Bus Ticket Booking Flow in Flutter
projectA UI prototype for booking bus tickets — search, pick a bus, pick a seat, enter passenger details, pay, ticket. Flutter with Riverpod and go_router, no backend.
Attendance App
projectThis app was built by the Mobile Programming group using Flutter.
A Course Management System in PHP and MySQL
projectA simple web app for managing course data using PHP and MySQL. Supports **CRUD (Create, Read, Update, Delete)** operations with a si...
Marcom Services: The Bun + Elysia API Behind the Marcom Dashboard
projectThe Marcom dashboard's backend — Elysia on the Bun runtime, MySQL, JWT, Socket.IO on a separate port, and an expiry cron triggered over HTTP.
Marcom: A Marketing Communications Material Dashboard
projectAn internal dashboard for tracking marketing communications material by brand, cluster, feature, and type — with expiry reminders and realtime updates. Next.js 15 + React 19 on the front, Bun + Elysia behind it.
beepresent: A CLI and API for the Campus Course Portal
projectA course-portal scraper wrapped as an API and a CLI — course lists, assignments, quizzes, and attendance submission, with a one-week cache because the data barely moves.
ALGO3 - Graph (Adjacency Matrix, C)
projectThis repository is prepared for the ALGO3 teaching pattern based on:
Cisco Packet Tracer Learning Course
projectThis folder is organized as a hands-on course for learning computer networking with Cisco Packet Tracer.
test_presence: GPS-Validated Employee Attendance
projectAn attendance app with geolocation-validated check-in and a leave-request flow. Go + SQLite backend, React front end with a map preview of the office radius.
Running
Things in actual use whose code is not public. These are pictures, not links — except the ones that are mine.

A warehouse stock log for a small business: pick your name, and every item in or out is recorded under it. Built because a notebook and a WhatsApp group always lose to a shift change.

AQUABROSS
A bathroom-fixtures company site: product catalogue, store locator and careers pages. Built and taken all the way to production.
More on GitHub
This list is picked by hand, not filtered by date — a batch of repos was bulk re-pushed once, so their timestamps cannot be trusted.
A Harel statechart engine for Go — hierarchical states, parallel regions, deep and shallow history. No dependencies beyond the standard library; the Temporal integration lives in a separate module.
A self-hosted studio for fate statecharts: open a machine to see its diagram, then step through it in the browser — send events, fire delayed transitions, watch the active state update over Server-Sent Events. Kept separate from the engine so `go get fate` never pulls in `net/http`.
A keyboard-driven terminal client for Temporal, aiming at parity with its web UI. Early: what exists is the gRPC layer, profile loading that matches the `temporal` CLI exactly, and four RPCs — nothing draws an interface yet.
Encrypted messages and files whose KEY can be destroyed on demand — and once it is gone every copy of the ciphertext dies with it, including the copies you do not control. The envelope travels over any channel; the key goes separately as 24 words or a QR code. Rust, XChaCha20-Poly1305, and the server links the header parser only, so it cannot decrypt anything it holds.
One Time Message — share a secret through a link that works exactly once. Go + chi + SQLite; the body is AES-GCM encrypted and the row is deleted from the database the moment it is read. Rate-limited, with PWA support.
A handwired wireless split keyboard: Scylla/Charybdis geometry, 24 finger keys + 5 thumb keys per hand (58 keys), two nRF52840s running ZMK, printed on an Elegoo Neptune 4 Pro with an articulated tenting stand.
The whole macOS workstation config in one repo — Ghostty, nvim, tmux, yazi, aerospace, sketchybar. GNU Stow symlinks the repo into `~/.config`, Homebrew Bundle installs the packages, and `install.sh` runs both in one go.
Pothole detection with a LeNet-5 CNN whose core is written by hand in NumPy — convolution, pooling, ReLU, softmax and backpropagation all derived and coded from scratch, with no deep-learning framework. Ships with a paper and a web demo.
- clownerShell
Clones a macOS `.app` into a second, independent copy with its own bundle identifier — so two Braves or two Slacks can run side by side. Editing `Info.plist` breaks the code signature, so the clone is re-signed ad-hoc.
An augmented-reality fishing game in Unity: place a virtual water surface in the real room through AR, then throw a spear at the fish matching the target colour. URP + ARFoundation, built for Android and iOS.
The board before ArkButton: a handwired Dactyl Manuform split, QMK firmware, wiring and flashing all done by hand. Its layout is the one later replicated into ArkButton’s ZMK keymap.
- karbarabDart
An Arabic vocabulary guessing-card game for Indonesian players, built with Flutter. Google sign-in, card modes, a global scoreboard, and challenge cards you can send to another player.