{"id":23092028,"url":"https://github.com/thiswillbeyourgithub/mini_litoy","last_synced_at":"2025-08-16T09:30:48.802Z","repository":{"id":242097341,"uuid":"808677760","full_name":"thiswillbeyourgithub/mini_LiTOY","owner":"thiswillbeyourgithub","description":"Minimalist LiTOY task sorting algorithm based on ELO scores","archived":false,"fork":false,"pushed_at":"2024-07-04T21:24:56.000Z","size":130,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-12-09T22:50:01.059Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/thiswillbeyourgithub.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-05-31T15:17:54.000Z","updated_at":"2024-12-05T16:23:14.000Z","dependencies_parsed_at":"2024-05-31T17:11:01.840Z","dependency_job_id":"c50c6e6a-57a0-45b9-89cb-65a2fd6528b2","html_url":"https://github.com/thiswillbeyourgithub/mini_LiTOY","commit_stats":null,"previous_names":["thiswillbeyourgithub/mini_litoy"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thiswillbeyourgithub%2Fmini_LiTOY","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thiswillbeyourgithub%2Fmini_LiTOY/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thiswillbeyourgithub%2Fmini_LiTOY/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thiswillbeyourgithub%2Fmini_LiTOY/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/thiswillbeyourgithub","download_url":"https://codeload.github.com/thiswillbeyourgithub/mini_LiTOY/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230027908,"owners_count":18161837,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-16T21:26:50.259Z","updated_at":"2025-08-16T09:30:48.793Z","avatar_url":"https://github.com/thiswillbeyourgithub.png","language":"Python","readme":"# mini_LiTOY\nMinimalist approach to the [LiTOY task sorting algorithm](https://github.com/thiswillbeyourgithub/LiTOY-aka-List-that-Outlives-You) based on [ELO scores](https://en.wikipedia.org/wiki/Elo_rating_system).\n\n*Note: for an android version with similar intention, take a look at [rank-my-favs](https://github.com/dessalines/rank-my-favs/)*\n\n# Features\n* Minimalist\n* Statically typed via typeguard\n* Made to be extensible\n* Supports callbacks\n\n# FAQ\n\n### What is LiTOY?\n[LiTOY](https://github.com/thiswillbeyourgithub/LiTOY-aka-List-that-Outlives-You) 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!\n\n### Why make mini_LiTOY?\nmini_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](https://github.com/omnivore-app/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.\n\n# Usage\n* `python -m pip install mini_LiTOY` or `python -m pip install git+https://github.com/thiswillbeyourgithub/mini_LiTOY.git`\n* Then you can either launch it with `python -m mini_LiTOY [ARGS]` or use the alias  `mlitoy [ARGS]`\n* `mlitoy --input_file my_text_file.txt --output_path output_file.json`\n## Notes\n* 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.\n* In case anything goes wrong, you can see the recovery files and logs using --verbose.\n* You can use toml file format instead of json. Just use an `output_path` that ends with \".toml\" instead of \".json\".\n\n## Examples\n* To sort the elements by ELO score: `cat output_file.json | jq 'sort_by(.ELO)'`\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthiswillbeyourgithub%2Fmini_litoy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthiswillbeyourgithub%2Fmini_litoy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthiswillbeyourgithub%2Fmini_litoy/lists"}