Lichess TV for actual TVs!
... help neededIntro
I was trying to find something worthwhile on TV after getting a severe case of existential dread watching the news. You know how it is: you start asking questions like "Ugh! Do I REALLY have to take over the world?".
And I thought Hey! I have a smart TV, it can install all kinds of stuff, let me install Lichess on it and watch chess being played! But neither the old (discontinued) app worked, nor the new one. So I went and downloaded some browsers - which for TV suck - and went to lichess.org and I was kind of being able, if I really tried, to navigate all of the menus and buttons and whatever so I watch games on the Lichess TV page. The process of getting to that point, though, was really annoying.
And I thought again - you can see most of my problems come from not thinking, thinking too little or thinking too much. I can make an app that will just stream chess TV. No playing, no analysis, no logging in, just choosing what you want to watch and enjoy. Just like those fireplace apps, only better. I mean, if Lichess can't get their act together and make a good app, I will make one!
The app
Here I was, coding furiously at AI prompts, and deciding I will make a web site, pack it into an Android/Apple/Roku/whatever shell and make it available to the masses. And it works kind of great, with some caveats.

One can choose any of the main categories, even press the + sign and get chess variants. One can flip the board and also choose between 30 different games from the category if you don't like the one chosen by Lichess. You get the player names, the player ratings, the time control, even the clock.
I even had immediate plans to implement moving back and forth in the game, watching broadcasts and tournaments and so on and so on. But there was a snag. The clocks!
The streaming API problem
Now, there is a problem with the clock and I don't know how to solve it at this moment. Maybe someone smarter can point me in the right direction. The API that streams the moves of a game gives me the move and the time left for each of the players. Which should work perfectly, only people might use it to cheat, so the API sends the information 3 moves behind. Problem is I get "Black has 50 seconds left" because that's what they had 3 moves ago, but I get it when they make the current move. There is no way to determine when the player had 50 seconds left.
What I did is record the time I get a new move and then use that time from three moves ago as the base time for time left. And it kind of works, but the clocks jump up and down anyway.
Not to mention that the end of the game is kind of awkward when all the last three moves are shown at the same time.
I've outlined the problem in this GitHub issue: NDJSON game stream move updates are not synchronized with the moments the moves were made · Issue #615 · lichess-org/api
If you know how to solve it so the clock is shown correctly and the time decremented (locally, of course) being in sync with the actual player time, let me know, please.
The Google problem
So, all major problems solved:
- web site working after two days work
- API issue logged in GitHub
- plans for future expansion present
- people excited with the idea
- a simple technical method to pack the site into a mobile app
- mobile app tested on my phone and my TV
All I had to do is publish it.
Not so fast! The process to publish a mobile app, as opposed to the relatively instant one for browser extensions (what? you thought you'd get away with a blog post that doesn't mention LiChess Tools?), is draconic. After making an account, giving them all the documents I ever had, paying them money, signing all possible waivers and policies and so on, I have to first go through two testing phases: a closed one and an open one, to even consider publishing.
Now, maybe I am just dumb and didn't get it, but as far as I can see, in order to get through the "closed testing" phase, I need the Android account emails of at least 12 people that I then add to a "Testers" list, and then they can open a link to install the app. After 14 days of at least 12 people testing this, I can move to the "open testing" phase, which I assume is more public, and only then I can publish it.

What are they really testing here? That I have at least 12 friends, otherwise I am the Unabomber? Anyway...
You can try this link: App Testing - Google Play in your web browser. Maybe it works better.
Help needed
Apparently, I am the Unabomber. I need people that would give me their Android emails and then, after I add them to the closed testing list, install the LiChess TV app from this link: LiChess TV, by Siderite – Apps on Google Play on their Android device. Preferably a TV, because you can just install the normal Lichess app on your phone, but phones or tablets will do as well. And you need to be in the tester list or the link won't work for you.
Just contact me privately if you want to help, so you can give me the email and I can add you to the tester team. DO NOT reply to this blog post with your email! 😅
If you have installed the application already, you need to uninstall it and install it from the link above, otherwise it doesn't count. The link I've sent earlier to the LiChess Tools users team is yet another type of testing called "internal testing" which apparently does jack squat for the publication.
Also, if you have experience in mobile app publication for various platforms (particularly the weird TV ones) please let me know. I want to pick your brain.
The plan
The plan, just so you know, is simple:
- do whatever I need to do to publish this application on Google App Store
- improve the app
- expand it to other TV platforms if demand is there
- keep it open source, free and ad free and nag free, forever, just like LiChess Tools
If you want to test the functionality in your browser, you can see it here: LiChess TV
Conclusion
Thanks for all the people helping me solve this! I know it's weird for someone to just pop up and ask you for your email. I really did not want to go through this, but apparently, Google has other ideas.
Also, once it's online and operational, I will take feedback and ideas on how to improve it. I always welcome feedback! Just remember it is meant to be used on TVs for passive watching, not play or analyze games with it.
Cheers!
