Seismic Prediction Platform
An on-chain prediction market that resolves on real earthquakes.
Context
→01I still remember the first time I came across prediction markets. The idea immediately caught my attention: a kind of futures trading, but designed in a way that could actually work for people who weren't professional traders. The opportunities felt endless. Too many ideas started forming in my head at once.
One of them kept coming back: what if the market itself was uncontrollable? Not just decentralized on paper, but genuinely untouchable. No insiders. No whales. No governance vote that could shift the outcome. Something where human intervention was simply not possible. I'd joke about it internally: the only one who could manipulate this market is God.
That became the narrative I wanted to build around. Predict the unpredictable. Bet on the unmanipulable. And that's when I thought about earthquakes.
Nobody can front-run a tectonic plate.
Seismic events are real, immutable, and verifiable. They resolve in minutes. They happen thousands of times a day worldwide. And nobody, not a whale, not a protocol team, not a data provider, can know one is coming before it does.
What surprised me most during the research wasn't that earthquakes are unpredictable. It was the opposite: they are brutally frequent. Most people don't realize that right now, while you're reading this, one probably just happened.
~55/day
One earthquake every 26 minutes, globally.
~40 significant/day
Strong enough to move markets. Every single day.
~4 major/day
Strong enough to be felt. Several times a day.
That became GeoMarket. An on-chain prediction market where every bet resolves on actual seismic activity. The Earth is the oracle.
The Product
→02GeoMarket is a prediction market where users bet against each other, not a house. Markets open every few minutes, close automatically, and resolve based on real seismic activity. No one controls the outcome. The Earth decides.
The core loop is fast. Regional markets like Japan run every 8 minutes. Global markets run on a 45-minute cycle. The rhythm adapts to what each region's seismic frequency can actually support. Early on, data speed nearly killed the concept. The solution was to match each region to its fastest local source instead of relying on a single global one.
No house edge
Users bet against each other. The platform never takes a side.
Fast resolution
Markets resolve in minutes, not days. Real data, real-time.
Multiple regions
Japan, Turkey, USA, Indonesia, Global. Each with its own rhythm.
Eight market types, each calibrated so both sides stay attractive. The goal was to keep every bet feeling like a real decision, not a foregone conclusion.
Magnitude
Will M3+ occur in Japan in the next 5 minutes?
Next Quake
Will the next quake be M4 or above?
Matchup
More quakes today: Japan or Indonesia?
The Big One
Will M7+ occur globally this week?
Navbar, live status banner, hero, and the highlight bets front and center.

The Big One
→03M7+ earthquakes happen roughly 1-3 times per week globally. Low probability, high impact, longer time horizon. The perfect structure for a jackpot mechanic: every day without a major earthquake the pot rolls over. When one hits, it pays out.
The Big One is a dedicated page, not just another market. It needed its own UX. Unlike the regular markets where users place bets with variable amounts, here you buy fixed-price tickets into the pot. The interface shows your pot share based on how many tickets you hold, how many were bought today, yesterday, and the running total. It's closer to a lottery than a trading panel, and I designed it to feel that way.
Below the hero, panels show the latest M6+ events worldwide and the full ticket purchase flow. But the moment I was most deliberate about was the VERIFYING state: when real M7+ activity is detected, the entire interface shifts into a tense, real-time watch. The feeling that something is actually happening right now. That tension is the product. No other prediction market has a resolver that can actually shake buildings.

GeoChart
→04I knew I needed something that would feel immediately familiar to anyone who has ever looked at a trading chart or a prediction market. That sense of "I understand what I'm looking at" before you even read a label. But it had to represent something completely different: real seismic events, plotted by Richter magnitude, in real-time.
The GeoChart was my answer. I designed it from scratch as a way to position earthquake events visually, where magnitude determines the Y-axis, time runs on the X-axis, and the threshold line tells you exactly where YES ends and NO begins. It borrows the visual language of trading, but the data is real, physical, and unmanipulable.
A price chart shows you a representation. The GeoChart shows you the thing itself.
Dots above the threshold line are YES territory. Dots below are NO territory. When the round closes, users don't need to trust the protocol. They can see exactly why it resolved the way it did.
Every market has a GeoChart. It's GeoMarket's signature visual element. The data visualization, the trust layer, and the engagement hook, all in one component. Three variants, each designed for a different type of market.
One region, one question. The worldwide over/under on M4+ earthquakes in the next 2 hours. Clean, focused, all the data you need in one view.

Smart Contract
→05Since 2021 I had wanted to build something on the blockchain. GeoMarket was finally that opportunity. I designed a single contract with one job: hold ETH, enforce rules, pay out. Minimal surface, maximum trust. Every design decision was about making users feel safe putting real money in.
Pull payouts
Winners claim their own ETH. The contract never pushes funds to anyone.
User-triggered refunds
If a round gets stuck for 24+ hours, any user can cancel it and get refunded. No dependency on the platform.
One contract
Binary, multi-outcome, and jackpot markets all run from a single deployment. One surface to audit, one source of truth.
Breaking it on purpose
Deployed on Base L2 Sepolia for testing. I created different user profiles: whales dropping large bets, casual users with small amounts, last-second snipers, and users actively trying to exploit edge cases. The goal was to break it before anyone else could.
2,681 chaos tests
Whales, snipers, casual users, edge-case exploiters. Every profile, every scenario. Zero failures.
Zero funds lost
Every ETH amount accounted for, down to the last wei. Audit balanced to the cent.
PnL Cards
→06The bet doesn't end when the market resolves. What happens after matters just as much. I designed shareable PnL cards that give users something worth posting: their prediction, the result, and the numbers. Three states, three different stories.
Green border, profit in ETH and USD, return multiplier, bet vs payout breakdown. Everything a winner wants to screenshot.

Branding
→07This is one of my favorite brand identities I've created. The logo came from thinking about the Earth itself. I wanted a shape that felt tectonic, almost like a crack or a fracture, but still worked as a clean mark. I can't fully explain the process beyond that. I felt it, and it clicked. Sometimes that's how the best logos happen.

Ferron
Primary brand typeface. Bold, industrial, built for impact.
UT Honsagh
Secondary typeface. Used across the UI for readability and contrast.
Reflection
→08I spent a long time thinking about what kind of market would actually be worth building. Not just technically interesting, but genuinely innovative. Something where the outcome is verifiable by anyone, impossible to influence, and happens frequently enough to sustain a real product. That creative process is what led me to seismic activity. It checked every box.
The hardest part wasn't the architecture. It was making the product feel trustworthy at the moment that matters most: when a market resolves. The GeoChart was the answer. Show users the actual seismic events that resolved their bet, plotted in real time. When you can see it, you don't need to trust anything.
Building from first commit to production in 6 days forced a discipline I'd recommend to anyone: ruthless scope clarity. Every decision had to earn its place. The UI is intentionally focused. The constraints that felt like limitations became the product's identity.