"Can I build a real-time MMO game in just 1 hour?" A project to experiment with the distributed processing capabilities of Elixir and Phoenix LiveView.
👉 Live Demo (Currently in Open Beta. The server is always open, so come join the raid!)
Cursor Party is a massive multiplayer browser game where every user's cursor is visible in real-time, and players cooperate to defeat a boss monster.
Inspired by how Discord handles millions of concurrent users using Elixir, I started this "1-Hour Challenge" to verify if I could handle real-time synchronization purely with server-side logic.
- Real-time Cursor Tracking: Share cursor positions with all connected users via WebSockets with near-zero latency.
- Boss Raid System: Synchronized Boss HP managed by Server-side state (GenServer).
- No Client-side Logic: All real-time logic is handled by Phoenix LiveView, without complex JavaScript frameworks.
- Backend: Elixir, Phoenix LiveView (1.7+)
- Styling: Tailwind CSS v4.0 (Alpha)
- Deployment: Docker, Koyeb
- Architecture: OTP (Open Telecom Platform) based distributed system
Prerequisites: Elixir and Erlang must be installed.
-
Clone the repository
git clone [https://github.com/jidohyun/cursor-party.git](https://github.com/jidohyun/cursor-party.git) cd cursor-party -
Install dependencies
-
Install Tailwind v4 (Local)
-
Start the server
Now you can visit localhost:4000 from your browser.
Bug reports and pull requests are welcome on GitHub at this repository. This project is intended to be a safe, welcoming space for collaboration.