Full-stack onchain games
The contract is only one state machine.
A player experiences one product, but its state crosses wallets, contracts, indexers, servers, queues, local projections, and the interface.
Across Sekai Glory, Lifeverse, and Realm, my work concentrated on keeping those boundaries coherent under real transactions, real-time expectations, and irreversible assets.
01Optimistic interfaces over slow finality.
Approvals, signatures, submission, mining, indexing, and reflected UI are distinct states. The interface must stay responsive without pretending any intermediate state is final.
I built transaction lifecycle UX around explicit pending, confirmed, failed, stale, and recovered states so a user could understand what the chain had actually accepted.
02Derived game state crosses several sources.
Battles, equipment, tournament state, productivity, rewards, and crafting combine contract reads, subgraph data, server records, and local calculations.
The hard work is defining which source owns each transition, how stale projections are reconciled, and when the product should recompute rather than trust cached state.
03DAO stewardship includes stopping work.
After joining the Lifeverse council, I reviewed Arcane against its year-long development cycle, delivery pace, and quality. Continuing would have spent more DAO resources without a credible path to the required result, so I argued to stop development.
That was a product decision as much as a technical one: protect the treasury, redirect effort toward work with a clearer path to players, and contribute directly to Colosseum of Phanes and NFT-holder distributions.
04Transaction-heavy gameplay changes product design.
Realm treated battles, equipment, missions, construction, crafting, resources, staking, and level progression as onchain state transitions—not decorative mints. Four verified gameplay contracts alone processed more than 277,000 transactions by August 2026.
Some complete actions exceeded practical single-transaction data limits, so I split payloads into batches and made partial progress and failures legible. The application also coordinated three subgraphs, local projections, gas and receipt behavior, and data-dense resource interfaces.
05Migration is a continuity problem.
Moving a live game between chains changes contracts, indexed data, wallets, operations, and the meaning of late transfers at once.
For Sekai’s Blast-to-Ronin migration, the snapshot boundary was treated as final and product flows were updated around the new execution and indexing boundaries rather than presenting the move as a trustless bridge.
06Ownership differed by project.
Sekai included contract, product, data, and operational work. At Lifeverse, my scope combined DAO council decisions, treasury stewardship, NFT-holder distributions, and direct Colosseum of Phanes development. Realm’s strongest attributable scope is the wallet-connected application and integration layer over a large existing protocol.
The public evidence below distinguishes official products, product media, verified contracts, transactions, tokens, and collections instead of treating each link as equivalent proof of authorship.