I built a website that finds matching positions from your in your Chessable courses

Sort:
maracle6

Hi All -

I found myself constantly playing games and thinking "I know this variation is somewhere in one of my Chessable courses..."  But how to find it? I created a tool for myself and decided to turn it into a website:  https://www.chesscorrection.com.  I'd love to get some feedback on whether you think it's useful or run into any problems, as I'm the only one to ever use it so far.

Looking up a position on Chessable is fairly complex: Open the game review, find a position, click share, copy fen, go to Chessable, go to Opening Explorer, select Load Position, paste the position, click Search in Courses, find and click my course.

And if I chose a position a little too late I might not find it in my course.  If I choose a position to search too early I may match numerous variations.

My site lets you select any game in your history and it will show you the last move in that game that's in one of your studied Chessable courses.  Then you can click on it to go directly to the matching variations.

It's really been helping me get instant feedback on my games and actually learn from my courses rather than being lazy and just playing another game!

BaronVonChickenpants

This sounds pretty interesting!

Omed

Wow amazing! Im wondering how this works on the chessable's part, does chessable have their own api?

maracle6

Chessable doesn't have a documented API, but there's a GraphQL API to retrieve user profiles as JSON (which contains your studied courses) and another API to get a list of courses that a position is in (essentially what happens when you click "Search Courses for Position" from the Opening Explorer. These are publicly accessible without authentication so for a few users I'm hoping it's no problem to use it.

If more than a few people are using the site I will try to figure out how to contact them to discuss -- the site does nothing that isn't already possible for an unregistered user with the Opening Explorer and drives engagement for them so I'm hoping it doesn't ruffle any feathers! I also spent a fair bit of time implementing a caching system to minimize the amount of traffic.

Omed
maracle6 wrote:

Chessable doesn't have a documented API, but there's a GraphQL API to retrieve user profiles as JSON (which contains your studied courses) and another API to get a list of courses that a position is in (essentially what happens when you click "Search Courses for Position" from the Opening Explorer. These are publicly accessible without authentication so for a few users I'm hoping it's no problem to use it.

If more than a few people are using the site I will try to figure out how to contact them to discuss -- the site does nothing that isn't already possible for an unregistered user with the Opening Explorer and drives engagement for them so I'm hoping it doesn't ruffle any feathers! I also spent a fair bit of time implementing a caching system to minimize the amount of traffic.

Nice i didn't know that happy.png

maracle6

I've learned a few useful lessons already:

  • A few users have joined that have private Chessable profiles, which prevents retrieving your list of courses. I'll work on some solution to help with this in the UI, but you'll need to make your Chessable profile and list of courses visible to "everyone," then go the profile page and click Save (at which time your courses are retrieved), then you can switch your Chessable profile back to private.
  • A user joined that had bughouse games in their history, which caused an error due to having no PGN. I put in a fix for this.
  • A user joined whose domain rejected the verification code email. This person was affiliated with a government so I'm unsure if I can do anything about this or if it's just very tight policies on that email server, but I'm investigating. All others have been confirmed.
    I appreciate everyone who has give it a try so far
AlexeyChess

Nice idea

Would happy to help in testing, currently not working for me

Would also add favicon icon to the website

Best

maracle6
AlexeyChess wrote:

Would happy to help in testing, currently not working for me

Would also add favicon icon to the website

What issue did you see? It looked like your account was set up ok.

I have favicons on my list...I started looking into them last week and discovered that they're not standardized and a whole set of icons is needed for various devices and resolutions. Turns out to be a small project happy.png

AlexeyChess

Works for me now (moves in green from chessable course)

AlexeyChess

By the way this is not Pirc (no g6)

This is:

https://www.chess.com/openings/Lion-Defense-Anti-Philidor-Lions-Cave-Variation

maracle6

The opening displayed is based on the ECO code provided in the PGN, which in the case of that game is Pirc. ECO codes are somewhat limited in that regard...Chess.com also includes a link to their opening page, for that particular game they actually provide a slightly different Lion page https://www.chess.com/openings/Lion-Defense-Anti-Philidor-Lions-Claw-Gambit. I could try to parse out the detailed variation based on that. The other challenge is that these very long variation names are hard to display. Maybe I can display the first X characters with ellipses and a mouseover tooltip to see the full name.

hognigni

How are you creating the ECO code? Thinking of adding a position search to www.chesstube.app but would need a way to allow user to input an ECO and also index all the games and their positions into ECO codes.