Inspiration
Most subreddit "games" are just a single poll — vote once, forget about it, nothing changes. We wanted something with an actual memory: a galaxy that Reddit collectively builds and where every decision leaves a permanent, visible trace. The hook we kept coming back to was: every day, this subreddit decides the future of an evolving universe — not "here's a poll," but "here's a world you're shaping."
What it does
Community Cosmos is a persistent, community-created galaxy that runs entirely inside a Reddit post:
- Found a planet, join one of three factions, and grow your civilization through daily actions.
- Vote on one shared galaxy-wide crisis per day. The winning choice isn't just flavor text — it has a real, visible consequence. Vote the protective option and the actual planet that crisis was about gets a glowing shield, visible on the map and in-flight. Vote the costly option and it visibly takes damage.
- Submit planets and species. Instead of disappearing into a database, submissions get an immediate visual acknowledgment on your own planet, then rotate fairly into a small set of "Featured Discoveries" that show up as scannable anomalies in-world for other players to find.
- Fly. A free-roaming exploration mode — wormholes you can physically fly into, a black hole with real gravitational pull, comets, asteroid belts, and community discoveries scattered through space.
- Read the Chronicle — a permanent, growing record of everything the community has decided, referencing real submissions and real outcomes.
How we built it
Phaser 3 for the galaxy map and the flight-sim exploration scene, a
vanilla-TS UI layer for everything else, all served through Devvit Web
— Reddit's platform for apps that run natively inside a post, hosted
entirely by Reddit's own infrastructure rather than an external server. The
backend is Hono, with all persistent state (galaxy, planets, users,
submissions, the Chronicle) in Redis via @devvit/redis, and a real Devvit
cron task resolves the daily crisis, grows planets, and rotates featured
discoveries automatically.
We deliberately kept the economy simple: no new currencies, no upvote/endorsement system layered on top of voting, and submissions never become their own map-cluttering planet — a small rotating "Featured" subset stays visible instead, so the design scales to a large community without turning the galaxy into visual noise.
Challenges we ran into
The biggest one: we originally built this against a standalone Express server, which doesn't work at all under Devvit — Reddit hosts your app's own client and server together as one unit, it doesn't run an external backend for you. That meant a full migration: Express → Hono, an in-memory store → real Redis (which meant converting the entire storage layer to async), and replacing a spoofable "trust this header" auth stub with real Devvit-provided user identity.
Mobile was its own fight. Reddit renders posts inside an iframe, which
broke assumptions we didn't know we were making — a URL-based dev-tools
flag silently never reached the app at all (query params on the outer
reddit.com page don't propagate into the iframe), and Phaser's canvas
kept intercepting taps meant for our HTML sidebar even when the sidebar
was visually on top of it, because DOM stacking alone doesn't stop
Phaser's own input manager on every mobile browser. We ended up explicitly
disabling Phaser's input at the scene level whenever an HTML panel is
covering it, instead of trusting CSS z-index to do that job for us.
Accomplishments that we're proud of
Making community submissions feel like they matter without a second voting system or letting the galaxy get cluttered — the fair-rotation Featured Discoveries system was the one piece we iterated on the most, because the naive version ("submit and hope it gets randomly picked one day") genuinely felt like shouting into a void.
What we learned
That "it compiles" and "it works on a real device inside Reddit's actual webview" are very different bars — several of our trickiest bugs (the dev-tools URL param, the touch leak-through) only existed because of Reddit's specific iframe embedding model, not anything a normal local dev server would ever surface.
What's next for Community_Cosmos
A sector-based galaxy split for real scale, cooperative SOS contributions (research/defense/supplies), and giving each submitted species some actual distinguishing visual identity instead of a shared generic icon.
Log in or sign up for Devpost to join the conversation.