Command line tool for fetching University of Oulu restaurant menus from the Jamix API.
Doubles as a general library for fetching menu info from Jamix.
jmenu is available for install on the python package index.
pip install jmenu
For testing purposes, the package can be built from the repository source code.
pip install build
python3 -m build
pip install dist/<package_name>.whl
jmenu can be invoked from the command line as is:
jmenu [-h] [-v] [-e] [-t] [-l {fi,en}] [-a markers [G, VEG ...]]
All flags and parameters described below
Argument | Example | Description |
---|---|---|
-a, --allergens | g veg | Highlights appropriately marked results |
Flag | Description |
---|---|
-h, --help | Display usage information |
-v, --version | Display version information |
-e, --explain | Display allergen marker information |
-t, --tomorrow | Fetch menu results for tomorrow |
-l, --language | Result language, opts: {fi, en} |
jmenu can also be imported as a library:
from jmenu import main
main.run()
Documentation for the library can be found in the project pages.
Pull requests are welcome. We use pre-commit hooks and GitHub actions to ensure code quality.
Requirements
- Python 3.10+
- Virtualenv
Setup the development environment with
python3 -m virtualenv env
source env/bin/activate
pip install -r requirements.txt
Run the tool
python3 -m src.jmenu.main
Execute unit tests
pytest
Documentation for the project is available in the project pages.
The documentation for the modules is built with Mkdocs. and the mkdocstrings extension, using google style docstrings.
You can build it from source by installing mkdocs
pip install mkdocs mkdocs-material
mkdocs serve
and navigating to localhost:8000 in your browser.