Skip to main content

A free and open source chess improvement app that combines the power of lichess and anki

Project description

Chessli

GitHub Repo stars GitHub code size in bytes Lines of code GitHub last commit GitHub issues GitHub followers

Thumbnail

A free and open-source CHESS improvement program that combines the power of Lichess and Anki.

Demos

CLI Demo (watch whole video on Youtube)

CLI DEMO GIF

Anki Cards Demo (watch whole video on Youtube)

CLI CARDS GIF

Documentation

If you have a question please first take a look at the documentation (also available here), which is currently work in progress. Feel free to open an issue afterwards :).

Features

  • Automatically fetch your games and played tactics puzzles from lichess via the berserk python client for the Lichess API.!
  • Find your mistakes by parsing your games and analysing them with python-chess.
  • Create a simple opening repertoire!
  • Spaced repetition & Retrieval Practice: Automatically (via apy) add your game mistakes, your openings and your tackled lichess puzzles to Anki.
  • More features on the way...!

Getting Started

:information_source: Information

  • At the moment, some technical expertise is needed to use Chessli.
  • Starting with version 0.2, however, I will add an Anki-Addon to ease those technical hurdles.
  • Also, please notice that this is a very early version, and some code parts are still rough on the edges.
  • Further, there are still some opinionated parts and hard-coded choices:
    • For example, it is not possible to fetch more than 20 games at once (to not bug down Lichess).
    • A lot more options are going to be opened up as soon as the codebase stabilises.
  • Long story short: things will improve over time! But feel free to open up issues!

Get Chessli

  1. Clone this repository & navigate into it:
git clone https://github.com/pwenker/chessli.git && cd chessli
  1. Install chessli with pip:
pip install -e .

Anki Support via apy

  • In order to directly "ankify" your mistakes, openings and tactics, you need to set up apy.
  • Currently chessli is compatible with apy version 0.6.0 and anki version 2.1.26.
  • Please refer to its install instructions for detailed information.

Lichess API Authentification

Get the Chessli Anki Cards

  • There is no dedicated shared deck page on Anki available yet, but will be coming soon.
  • Until then, download the required sample of Anki cards from [here]("/imgs/Chessli Sample Cards.apkg").

Acknowledgments:

  • The interactive chess functionality on the cards is taken from these fantastic cards.
  • You can find a great video about those cards here.

Basic Usage

To get an overview of the basic CLI capabilities of Chessli, take a look at this short demo video I created (click on the image below to watch on youtube):

Youtube-Video: CLI Demo

Chessli CLI Demo

There is also a short video showing the chesslis Anki cards in action:

Youtube-Video: Anki Cards Demo

Chessli Anki Cards Demo

:information_source: I am in the midst of creating a comprehensive documentation that will be released with version 0.2.

Until then you can take a look at the CLI documentation, or programmatically ask it questions:

Examples:

  • Getting general help for chessli:
chessli --help
  • Getting help for individual chessli commands:
chessli games --help
  • You can add a create a file configs/lichess.user and put your user name in it.
  • Then it will be used as default username in place of mighty DrNykterstein.

Acknowledgments

  • Lichess:
    • A free, no-ads, open source chess server that let's everyone play chess!
    • I truly love it.
    • Think about whether to become a patron! :)
  • Anki:
    • A free and open-source flashcard program using spaced-repetition, a technique from cognitive science for fast and long-lasting memorization.
    • I couldn't imagine learning without it anymore.
  • Anki Cards Design
    • The interactive chess functionality on the cards is taken from these fantastic cards.
    • You can find a great video about those cards here.
  • Further Awesome Tools:
    • Most of the heavy lifting, e.g. parsing games, finding mistakes, extracting openings, etc. is done with python-chess.
    • The communication between lichess and chessli is done via berserk.
    • The CLI is built with typer.
    • The rich colors are made possible with rich.
    • The apy tool is used to programmatically import the chess knowledge into Anki.
    • You should really check those tools out; each and everyone one of them is amazing.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

chessli-0.1.0.tar.gz (14.6 kB view hashes)

Uploaded Source

Built Distribution

chessli-0.1.0-py3-none-any.whl (18.7 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page