Most board games live in a box under the bed, waiting for a rainy Sunday. I wanted to build something that could be played any time, with friends in different cities, without needing to be in the same room. Quinline started as that idea and grew into a full real-time multiplayer game built from scratch.
The game itself is inspired by the classic card and board game Sequence. Each player holds a hand of cards. Each card maps to a position on the board. Play a card, place your coin. The goal is to form a line of five coins before your opponents do. Simple to explain, genuinely hard to master.
The name
QuinLine comes from "quin" meaning five, and "line" for the row you are trying to form. Five in a line. That is the whole game.
How to play
Setup
Create or join a room
One player creates a game and shares the room code. Others join with the code. The game starts automatically once everyone is in.
Your turn
Play, place, draw
Select a card from your hand, click the matching board position to place your coin, then draw a new card to end your turn.
Special cards
Jacks change everything
Two-eyed Jacks are wild and can go anywhere. One-eyed Jacks remove an opponent's coin. Corner spaces are free for everyone.
Winning
Five in a row
Form a line of five coins horizontally, vertically, or diagonally. Two players need two quinlines to win. Three players need one.
How it is built
The real challenge in building a multiplayer game is keeping every player's screen in sync without delay. A player placing a coin needs to appear on all other screens immediately. That ruled out polling and pushed the architecture towards WebSockets from the start.
The trickiest part was managing game state consistently across multiple clients. Every move needs to be validated server-side before being broadcast, so a player cannot cheat by sending a fabricated board position. The server is the source of truth and the clients only render what they receive.
Quinline is currently in beta. If you want to try it with a few friends or have feedback on the game mechanics, reach out or open an issue on GitHub.