Minimalist LiTOY task sorting algorithm based on ELO scores
Project description
mini_LiTOY
Minimalist approach to the LiTOY task sorting algorithm based on ELO scores.
Features
- Minimalist
- Statically typed via typeguard
- Made to be extensible
- Supports callbacks
FAQ
What is LiTOY?
LiTOY was a personal project. The idea is to dump all your TODOs in one place, then rank them using the mean ELO scores of question answer. The default questions are Which is more important to you? and Which takes the less time? but you can use anything you like instead!
Why make mini_LiTOY?
mini_LiTOY's idea is to keep the code idea but this time in a minimalist python script. As long as the user takes care of storing the tasks in a text files, the LiTOY algorithm will update an output json (or toml) based on the score. The first use for this will be to rank my Omnivore reading queue by downloading titles of articles to read via their API, then uploading the ELO score as a label. This can be found in the examples folder.
Usage
python -m pip install mini_LiTOYorpython -m pip install git+https://github.com/thiswillbeyourgithub/mini_LiTOY.git- Then you can either launch it with
python -m mini_LiTOY [ARGS]ormlitoy [ARGS] mlitoy --input_file my_text_file.txt --output_path output_file.json
Notes
- each new (nonempty nor commented) line in input_file will be added to the input_file.json with the default values. Each answer from the user will update the json file.
- In case anything goes wrong, you can see the recovery files and logs using --verbose.
- You can use toml file format instead of json. Just use an
output_paththat ends with ".toml" instead of ".json".
Examples
- To sort the elements by ELO score:
cat output_file.json | jq 'sort_by(.ELO)'
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mini_litoy-0.1.4.tar.gz.
File metadata
- Download URL: mini_litoy-0.1.4.tar.gz
- Upload date:
- Size: 23.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
035eb74e845391a47e1af34abcd171d147a264ba8276e78a0e6576efce0e2eec
|
|
| MD5 |
1419ab845785bcbec066815894515d50
|
|
| BLAKE2b-256 |
165394bc9b4e111364d17b838420aa653f2b3001cac6dd097d42640099ea2c0c
|
File details
Details for the file mini_LiTOY-0.1.4-py3-none-any.whl.
File metadata
- Download URL: mini_LiTOY-0.1.4-py3-none-any.whl
- Upload date:
- Size: 23.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
40ebafcf2507a8d9d12ab72bd91370acfe6a3f208f1339a4b2a0e7f21ac1fe96
|
|
| MD5 |
84eadd2fa61e82265123c2007714327f
|
|
| BLAKE2b-256 |
dafa5551ac3f2121f15f5a2d0d15e42be9da5a43962b94e538acfd4a61e4baf4
|