finds.dev← search

// the find

HasangerGames/suroi

★ 478 · TypeScript · GPL-3.0 · updated Jul 2026

An open-source 2D battle royale game inspired by surviv.io. Work in progress.

Suroi is a browser-based 2D battle royale game, a surviv.io spiritual successor built with TypeScript, PixiJS for rendering, and uWebSockets for the server. It's a playable game at suroi.io with an active community, not just a tech demo. Target audience is developers who want to study or contribute to a real multiplayer game codebase.

The tech stack is well-chosen: uWebSockets is genuinely fast for this kind of high-frequency game state, and PixiJS is the right call over raw Canvas for a game this size. The asset organization is thorough — per-surface footstep audio, per-weapon fire/reload/switch sounds, seasonal variants — someone put real work into the game feel. Bun as the runtime is a practical choice here since the server is I/O-bound and Bun's startup time matters for dev iteration. The project has a Svelte-based map editor bundled in the repo, which is a serious contributor tool, not an afterthought.

No visible server-side architecture docs — if you want to understand the netcode (tick rate, state sync, delta compression or lack thereof), you're reading source cold. The 'work in progress' label is honest but the codebase has grown large enough that onboarding friction is real without a technical overview. Self-hosting docs are wiki-only and shallow; running a production instance with matchmaking across multiple game servers isn't covered. The client bundle will be large given the audio asset count, and there's no obvious evidence of asset streaming or lazy loading strategy in the directory layout.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →