GammaSkins: Skin Marketplace Platform
A full Counter-Strike skin marketplace with instant bot trading, live inventory sync and Stripe payments.
What it is
GammaSkins is a marketplace for Counter-Strike skins. Users list items from their Steam inventory, buyers pay by card through Stripe, and bots deliver the items instantly. The whole product depends on one thing: the trade between a buyer and a bot has to complete correctly, every time.
How it’s built
The frontend is Angular (standalone components and signals) with server-side rendering through @angular/ssr, so item pages can be indexed. The backend is Node.js and Express on PostgreSQL, with Stripe as the payment rail. Fulfilment is driven by webhooks, so money, inventory and trade state stay consistent even when requests arrive out of order.
Inventory sync uses Steam’s public inventory endpoints, cross-checked against the items the bots own. Listing, pricing and purchase flows sit on top of the same trade engine patterns that later went into IO Saga.
What it taught me
No other build taught me as much about failure. Two buyers clicking on the same item at once and causing a double-spend race. Webhook retries that have to be idempotent. A trade that is technically “in progress” for up to 30 seconds, and what that does to the UX. Every current lab build is designed with those lessons in mind.
More from the lab
- 01 SEPT 2026 [Personal] IO Saga: Real-Time CS2 Skin EconomyLive pricing, automated trade settlement and a full Steam economy platform for Counter-Strike 2 skins.→
- 10 AUG 2026 [Personal] Market Price PipelineAutomated ingestion of Buff163 market data into PostgreSQL. It's the pricing backbone behind every skin platform I run.→
- 01 FEB 2024 [Client] Gecko Capital: Document Publishing SiteA lightweight website for publishing company documents, with the server setup and deployment done by me.→
Stuck on a hard technical problem? Maybe I can help.
I take on the occasional advisory job, custom software architecture and research collaboration. There's no sales funnel. You write to me and I answer.