Inspiration

Reddit has always been a hub for global community collaboration. I wanted to capture that spirit in a playful, interactive way — not just another game, but a living Reddit-native experience where users collectively care for a character and watch their impact unfold.

Inspired by Tamagotchi, GeoGuessr, and Reddit’s culture of memes, cities, and collaboration, Around the World with Snoo was born.


What it does

Around the World with Snoo is a Reddit-integrated survival adventure where the entire subreddit helps keep Snoo alive, healthy, and happy as they walk around the world — in real time.

Core Features:

  • Community actions like Feed, Water, Cheer keep Snoo’s stats up
  • Snoo walks across dynamically changing cityscapes (NYC, London, Tokyo, etc.)
  • Real-time weather and time-of-day integration per city
  • Live stats panel and travel progress tracking
  • Leaderboards and community Achievements
  • A collaborative Music Composer where users create & share city-based beats

How I built it

Full-stack architecture with a modern web development stack:

  • Frontend:

    • Built with React 19 and TypeScript
    • Styled using Tailwind CSS, later adapted into a custom pixel art UI
    • Fully responsive and optimized for mobile-first interaction
  • Backend:

    • Node.js (serverless) using Express.js
    • Redis for storing game state, cooldowns, user actions, music, and achievements
  • Platform Integration:

    • Runs inside Reddit via the Devvit framework
    • Handles Reddit authentication, API interactions, and scheduled background tasks
  • Audio:

    • Client-side Tone.js powers a 4x16-step sequencer
    • Sequences are tied to cities and expire after 24 hours
  • APIs:

    • Open-Meteo API provides live weather and local time for each city Snoo visits

Challenges I ran into

Devvit Environment

  • Sandboxed nature of Devvit required careful handling of webview assets and event lifecycles
  • Frequent errors like useWebView fullscreen request failed required deep debugging and workarounds

Redis State Management

  • Used Redis TTLs for ephemeral data (music, stats)
  • Needed atomic operations to handle leaderboards, cooldowns, and community stats without race conditions

Simulating Real-Time

  • No WebSockets allowed — instead, clever polling and UI feedback simulate real-time interactivity

Pixel-Perfect UI

  • Built a mobile-first UI that then had to be styled into pixel-art format while retaining responsiveness
  • Every action has touch-friendly, accessible feedback

Dynamic Content Generation

  • Contextual story snippets, weather-based logic, and live events were all dynamically generated on the backend

Accomplishments that I're proud of

  • Built a fully playable game inside Reddit using only Devvit + Bolt
  • Created a real-time, persistent survival game with global state
  • Integrated weather, location, and community collaboration
  • Designed a collaborative beat composer using Tone.js and TTL Redis logic
  • Balanced game design, visual charm, and mobile UX in just days

What I learned

  • How to build real-time mechanics inside the limitations of the Reddit Devvit platform
  • Advanced Redis TTL strategies for ephemeral game data
  • Smooth integration of Tone.js with a custom sequencer and city-based music logic
  • Building for mobile-first from day one makes every system more intuitive and accessible
  • Playtesting = gold — Redditors think of edge cases I never imagined

What's next for Around the World with Snoo

  • Subreddit-specific biomes with unique styles, challenges, and environmental modifiers
  • AI events powered by GPT — dynamic journal logs, emergencies, or random thoughts from Snoo
  • Custom avatars and accessories voted by the Reddit community
  • More cities, more lore — adding unlockable paths and storylines
  • City soundtrack remixing from community beats
  • PWA support for smoother mobile use
  • Reddit flairs & trophies to reward top helpers and musical contributors

Share this project:

Updates