shipped

Products I designed, built and run. Solo.

FIVEFORGE

PythonFlaskBlender.NETJavaScript

A web platform that turns uploaded 3D models into game-ready assets. Flask driving headless Blender and a .NET CodeWalker pipeline, with Tebex billing, a credit system and a Discord bot. Live, with paying users.

five-forge.com

ElementRP panel

Cloudflare WorkersD1ReactTypeScript

Logs and admin panel for a live game server. Cloudflare Worker + D1, Discord OAuth with role-based tiers, real-time alarms and economy tracking. Staff-only, so there is no public link.

staff-only — no public link

whereiaml-docs

Next.jsfumadocsCloudflare

Documentation for my released scripts — install, config, exports. Next.js + fumadocs, static export on Cloudflare.

docs.whereiaml.com

things that actually run

Not screenshots. These are the real engines from my projects, ported to the browser and running client-side.

Real pieces from systems I run — a chess move generator, an inventory packer, a power-grid solver. Typed out by a hand-written tokenizer, not a highlighting library.

1
2 local function perft(board, depth, side)
3 if depth == 0 then return 1 end
4 local nodes = 0
5 for _, mv in ipairs(generateMoves(board, side)) do
6 local undo = board:make(mv)
7 if not board:inCheck(side) then
8 nodes = nodes + perft(board, depth - 1, -side)
9 end
10 board:unmake(mv, undo)
11 end
12 return nodes
13 end
14
15 -- castling: only across empty, unattacked squares
16 local function castle(b, side, out)
17 local k = b:king(side)
18 if b.rights[side].short and b:empty(k + 1) and b:empty(k + 2)
19 and not b:attacked(k, side) and not b:attacked(k + 1, side) then
20 out[#out + 1] = move(k, k + 2, CASTLE_SHORT)
21 end
22 end
23
24 assert(perft(startBoard(), 3) == 8902, "movegen broken")
main* Ln 1, Col 1 Lua UTF-8

open source

Free, public releases. Code on GitHub, docs on docs.whereiaml.com.

whereiaml_vehicleshop

LuaTypeScriptReact

Standalone vehicle shop for QBox & ESX. In-game studio, test drive, framework-agnostic bridge, fully config-driven.

code → docs →

betterxSound

LuaJavaScriptMIT

Maintained fork of Xogy/xsound. Fixes the YouTube CEF memory leak and adds server-side anti-abuse. Drop-in — the resource stays `xsound`.

code → docs →

all repositories on github →

contact

I take on contract work — web apps, tooling, backends, and the infrastructure under them. If you have something to build or something that keeps breaking, send me a line.

loading…