How I made a Rails weather app feel like a SPA
I wanted Forecastly to feel smooth without turning it into a React app. Turbo Frames, lazy loading, and a couple of small Stimulus controllers were enough.

I wanted Forecastly to feel smooth without turning it into a React app. Turbo Frames, lazy loading, and a couple of small Stimulus controllers were enough.
The most useful part of the Intelli Casino betting contract isn't the payout formula. It's the way the contract turns a live game into a small state machine with explicit transitions and guardrails.
The Intelli Casino role system isn't just a frontend toggle. It shows up in Prisma relations, GraphQL authorization, the active-games dashboard, and the play screens themselves.
The betting contract got interesting once the payout math had to line up with actual tests. Foundry was useful here because it made the state changes and emitted values easy to pin down.
I didn't build a separate client-side event layer for Intelli Casino. The GraphQL subscription payloads wrote straight into Apollo cache, and that turned out to be enough to drive the whole live UI.
For a game that could eventually involve real money, hiding future questions can't be a frontend courtesy. It has to be enforced in the GraphQL payload itself.
The interesting part of a live quiz game isn't rendering questions. It's keeping every client on the same clock while still letting the player move fast and the server stay authoritative.
The main reason for the split was simple: I wanted realtime subscriptions, and Vercel wasn't the place to run long-lived WebSocket connections. Once that constraint was clear, the architecture got clearer too.
Developing features that connect alumni and create opportunities through a specialized networking platform.
A deep dive into my 2.5-year experience as a Software Engineer at Atlas Obscura, where I contributed to building and maintaining the digital platform that showcases the world's most fascinating places.