This script interacts with the mooc.fi instance of the CSES (https://cses.fi) website to perform various actions such as logging in, retrieving exercise lists, and submitting solutions. It provides a convenient way to view and submit tasks.
- Login: Log in to your CSES account using username and password.
- Retrieve Exercise Lists: Get a list of exercises available on the CSES platform.
- Submit Solutions: Submit your solutions to specific exercises on the platform.
pip install tyoraThe script can be used from the command line. The following commands are available:
tyora login: Stores your mooc.fi username and password and tests if we can log in with them.tyora list: Retrieves and displays a list of exercises available on the CSES platform.tyora show <exercise_id>: Displays the details of a specific exercise.tyora submit <exercise_id> <path_to_solution_file>: Submits a solution to a specific exercise.
The name "tyora" is derived from Finnish words: "työ" meaning "work" and "pyörä" meaning "wheel".
Anyway, pyora was already taken, so I went with tyora... ;)
Contributions are welcome! If you have any suggestions, bug reports, or feature requests, please open an issue or submit a pull request.
Rye
This project uses Rye to manage dependencies, formatting, linting and packaging.
Install it using the instructions on the Rye website, then run rye sync in the root of the project to install the necessary tools.
How to use Rye
Reading the documentation is probably a good idea, but in short:
rye syncinstalls the necessary tools.rye formatformats the code.rye lintlints the code.
pre-commit
We use pre-commit to run the linters before each commit. To install it, run rye sync and rye run pre-commit install.
This is not strictly required, but it'll make your life easier by catching issues before the github actions deny your PR.
This project is licensed under the MIT License - see the LICENSE file for details.