FUTURA · SOLO PROJECT

A real-time world, engineered end to end.

A browser-to-desktop multiplayer world inspired by Habbo Hotel: a cryptographically signed desktop client, a distributed real-time backend with a three-way trust model, and an AI pipeline that generates the art. Designed, built, and shipped by one person.

Web sign-up
Angular
Signed launcher
Wails · Go + Svelte
Live world
Java Swing
Secure desktop delivery

The client cannot simply be downloaded and run. It has to prove who you are, and that it has not been tampered with.

Deep link with SSO tokenfutura://launch?token=… (one-time) POST /auth/handshakeSSO + device fingerprint Refresh + access tokens30-day disk · 15-min RAM POST /auth/exchangebearer access JWT Game JWT minted60-second EdDSA token Piped to Java client via stdingame JWT + refresh, then EOF Backend call Token held by launcher Boundary
Authentication: browser SSO to in-game session

A one-time SSO token from the deep link is exchanged for a rotating 30-day refresh token (DPAPI-encrypted on disk) and a short-lived access JWT. Hitting Play trades that for a 60-second Ed25519 game JWT, handed to the Java client over stdin so it never shows up in a process listing. Four token types, each scoped to the narrowest lifetime its job allows.

GET /api/launcher/manifestbearer access JWT Download from CloudFrontsigned URL · range-resumable Streaming SHA-256 checkmatches manifest hash Ed25519 verify manifest5 invariants, before extract Extract to stagingzip-slip + zip-bomb guards Atomic rename → installrotate version, purge old Network fetch Integrity gate Disk write
Delivery: signed manifest to atomic install

The package streams from CloudFront as a resumable download with a running SHA-256 check, then is verified against an Ed25519-signed manifest: kid, signature, version, hash and size. These five invariants make downgrade and key-swap attacks fail closed. Only then does it extract (guarded against zip-slip and zip-bombs) and atomically install, keeping the last build for rollback.

Wails (Go + Svelte) · AWS S3 / CloudFront / KMS · Ed25519

Distributed real-time backend

Three callers, three trust mechanisms. The backend never treats them the same.

Game clientJava Swing Game serverTCP socket :5555 Spring backendsource of truth Kafkaaudit trail Ed25519 JWT HMAC writes game JWT reads (~60s) trade audit
One backend, three front doors

The web reads with a 24-hour session JWT; the game client reads directly with its 60-second game JWT, checked at the backend and again locally by the game server at join. Writes (trades, inventory, credits) come only from the game server, HMAC-signed with a 30-second replay window, so a patched client can't forge state. Live movement and chat run on a custom line-based TCP protocol; Kafka carries a fire-and-forget trade audit trail, Redis caches the profile page, and STOMP pushes room events to the browser.

Java · Spring Boot · MySQL · Kafka · Redis · STOMP

AI content pipeline

All the art that fills the world comes from the project's own pipeline. It is one of the three core systems, not an add-on.

Pipeline

Prompt to placed item

A text prompt becomes catalog-ready furniture: image generation (FLUX / nano-banana), two-to-four chained isometric angles for view consistency, then a review step that sets tile size, category, collision, wall-or-floor placement and per-angle offsets before it goes live in-world.

Angular admin app · isometric tile math
Open source

Piskel MCP recolor engine

A headless, LLM-drivable pixel-art editor with around 50 MCP tools for layers, frames, drawing and export. Its batch recolor generates every avatar combination (hair, eyes, top, trousers, shoes, skin) with perceptual matching that preserves shading and anti-aliasing. Open-source; I'm a contributor.

TypeScript · Model Context Protocol
Built with
Frontend
AngularNgRxTypeScript
Desktop
WailsGoSvelteJava Swing
Backend
Spring BootHibernateMySQLRedisKafkaSTOMP
Cloud & security
AWS S3CloudFrontKMSEd25519HMACJWT
AI
MCPFLUXPiskel

Role, solo: product, art direction, full-stack, desktop client, cloud infrastructure, and the AI content pipeline.