About the Project
GEODA is a 3D vault ritual game built for Reddit. Every 12 hours (UTC), players receive up to three mystery glass cubes to crack open on a mystical altar. Each cube reveals a collectible mineral with a unique color × border rarity combination.
Once all cubes have been opened, the altar seals itself and displays a countdown until the next ritual.
Karat is GEODA's in-game collection score that represents the overall value of a player's vault. It is a gameplay metric only and is not real money or cryptocurrency.
Inspiration
GEODA started as a crystal-mining prototype focused on realistic glass materials and satisfying crack-to-reveal interactions. We redesigned it specifically for Reddit's mobile WebView with one goal: create a complete, rewarding experience that can be enjoyed in under two minutes while encouraging players to return every 12 hours.
What It Does
Each ritual follows a simple gameplay loop:
Enter the vault → choose a floating glass cube → tap four times to crack it → reveal and collect the mineral.
Collected minerals contribute to several progression systems:
• Collection — Browse, filter, sort, and inspect owned minerals.
• Album — Track discovered color and border combinations.
• Market — Monitor deterministic mineral valuations.
• Weekly Ranks — Compete based on the total base value of minerals collected during the current UTC week.
The game also features streak progression, pity protection for rare drops, fullscreen mineral inspection, a sealed-vault countdown, adjustable graphics quality, reduced-motion support, and a responsive mobile interface.
How We Built It
GEODA is built with Devvit Web, while the backend uses Hono and Redis to provide server-authoritative player identity, rituals, random reward generation, pity mechanics, streak progression, inventory, albums, and weekly leaderboards.
The 3D experience is powered by Three.js and WebGL2, featuring the altar, mystery glass cubes, mineral models, lighting, particles, and crack effects. Adaptive quality settings automatically balance visual quality and performance across mobile devices.
Challenges
Optimizing for Reddit's mobile WebView required balancing visual quality with stable WebGL2 performance.
To support lower-end devices, we created lightweight glass rendering, adaptive quality scaling, frame throttling, lazy texture loading, and inventory caching. We also ensured all rewards remain server-authoritative while maintaining synchronized 12-hour rituals across all players.
What We're Proud Of
• Twelve collectible minerals with realistic textures.
• A satisfying crack-to-reveal ritual.
• A seamless sealed-vault experience.
• Collection management with filtering and discovery tracking.
• Fullscreen mineral inspection.
• Server-controlled pity and streak progression.
• Weekly community leaderboards.
• Mobile-first performance optimization and accessibility support.
What We Learned
Short, repeatable rituals paired with clear return timers fit Reddit's usage patterns better than longer gameplay sessions.
We also learned that responsiveness, stability, and polished user experience have a greater impact than advanced graphics alone.
What's Next
Future updates include social sharing for rare discoveries, improved geometry LODs, expanded accessibility options, seasonal leaderboard events, additional collectible minerals, and new long-term progression systems driven by community feedback.
Built With
- 3d
- css
- design
- devvit
- game
- hono
- html
- javascript
- node.js
- redis
- three.js
- typescript
- vite
- web
- webgl2
- webview


Log in or sign up for Devpost to join the conversation.