
Suroi
Open-source browser-based 2D battle royale game
498 stars 238 forks last commit first released GPL-3.0
Actively maintained
Last commit 2 Aug 2026.

Suroi is an open-source 2D battle royale game inspired by surviv.io. It provides a browser-based, real-time multiplayer experience with separate client and server components written primarily in TypeScript. The project is a work in progress and is designed to be run locally or self-hosted for private or community servers.
Key Features
- Real-time browser multiplayer matches with fast-paced battle royale mechanics
- Client rendered using a sprite-based engine (Pixi.js) and built with modern web tooling
- Server and client implemented in TypeScript; development workflow uses Bun for local dev
- Production builds served behind NGINX; server uses a high-performance WebSocket-based backend
- The project includes seasonal/event content and a modular codebase that is suitable for modification and community contributions
Use Cases
- Host a private game server for a community, event, or LAN-style matches
- Study and modify a browser multiplayer game stack for learning or custom features
- Run seasonal modes, custom maps, or community-driven game servers
Limitations and Considerations
- The project is actively developed and marked as work in progress; some features may be incomplete or unstable
- Requires familiarity with Bun and modern web tooling for development; production deployment expects NGINX and a WebSocket-capable server environment
- Documentation and deployment guides are community-maintained and may require manual setup steps to run reliably
Suroi is a practical open-source implementation of a browser battle royale that emphasizes a modern TypeScript stack and moddability. It is well suited for communities wanting to self-host a lightweight real-time multiplayer game or developers learning browser game architecture.
Categories:
Tags:
Tech Stack:
Similar to Suroi

Karaoke Eternal
Self-hosted karaoke party system with web-based queues and player
Open-source karaoke party system where guests queue songs from their phone while a browser-based player runs the room, supporting MP3+G and MP4.

Ghostboard
Lightweight real-time synchronized text board with WebSocket API
Ghostboard is a minimal real-time text board that syncs text across devices via WebSocket and exposes a REST API and CLI for updates and retrievals.
MyHeats
Live heats, scoring, and leaderboards for sports events
Self-hosted web app for managing sports heats, live scoring, and real-time leaderboards, with athlete and startlist management and CSV exports.
Lila (lichess.org)
Online chess server for real-time play, analysis, and tournaments
Lila is the open source server behind lichess.org, providing real-time chess, puzzles, analysis, tournaments, teams, and community features via web and mobile clients.

WeTTY
Web-based terminal access over HTTP/HTTPS
WeTTY provides browser-based terminal access to local shells or remote SSH hosts using xterm.js and WebSockets for responsive interactive sessions.

Rustpad
Minimal real-time collaborative code editor for the browser
Efficient, minimal collaborative code editor with real-time editing in the browser, OT-based syncing, WebSocket communication, and optional SQLite persistence.





