Remix.run Logo
kelvinquee 11 hours ago

No, please don't apologise. Thank you for brining up a great point!

Running something as complex as Lichess is... unwieldy when all I wanted was something I can quickly spin up in 5 mins on nearly any server, with a simple mobile interface for my father-in-law and child, and easy-to-debug (Lichess uses websockets which are often blocked by state firewalls).

If you don't have to deal with an amorphous state actor and a very different Internet culture, then please use Lichess. :)

utopiah 8 hours ago | parent [-]

Out of curiosity what kind of traffic is safe?

In the context of chess I would imagine passing JSON around via EventSource/SSE should be more than enough.

kelvinquee 8 hours ago | parent [-]

I'm not sure. The GFW is rather tricky and is known to do DPI.

For now, yes we are communicating moves in exactly the way you described EventSource! Eg:

{ "fen": "rnbqkbnr/pppppppp/8/8/4P3/8/PPPP1PPP/RNBQKBNR b KQkq e3 0 1", "status": "active", "turn": "b", "white_ready": true, "black_ready": true, "spectators": 1, "in_check": false, "last_move": "e2e4", "game_over": false, "available_colors": [], "reservations": { "white": {"reserved": true, "expires_in": 0}, "black": {"reserved": true, "expires_in": 0} } }