Rust port of c++ based kanttiinit cli, a cli to browse Helsinki area student restaurant menus. Supports the same features (and couple of extra ones) as the c++ version.
- Query-based search by restaurant or area name
- Day selection (today, tomorrow, etc.)
- Course filtering by keyword
- Language support (Finnish and English)
- No external binary dependencies (curl not required)
Download pre-built binaries for your platform from the releases page.
git clone https://github.com/Kanttiinit/cli && \
cd cli && \
cargo install --path .Search for restaurants in a specific area:
kanttiinit -q otaniemiSearch for restaurants by name:
kanttiinit -q unicafeFilter menu items by keyword:
kanttiinit -q töölö -f saladView menus for tomorrow:
kanttiinit -q alvari -d 1Options:
-q, --query <QUERY> Search restaurants by restaurant or area name
-d, --day <DAY> Specify day (0=today, 1=tomorrow, -1=yesterday, etc.) [default: 0]
-f, --filter <FILTER> Filter courses by keyword (case insensitive)
-n, --head <HEAD> Show first n restaurants
-v, --version Print version
-a, --address Show restaurant address in the output
-u, --url Show restaurant URL in the output
--hide-closed Hide closed restaurants when searching for todays menus
--hide-no-menu Hide restaurants without menu when searching for todays menus
--set-lang <SET_LANG> Save the preferred language [possible values: fi, en]
-h, --help Print help
Set your preferred language (Finnish or English):
kanttiinit --set-lang fi
kanttiinit --set-lang enThe language preference is saved in ~/.config/kanttiinit/config.toml.
This project uses devenv to manage the development environment. Install devenv and optionally direnv for automatic shell activation.
All development tools used in this repo are provided by devenv (except devenv and direnv themselves), so no extra global tool installs are needed.
# With direnv (recommended)
direnv allow
# Without direnv
devenv shellList all tasks with devenv tasks list. Common ones:
devenv tasks run kanttiinit:build # Build the project
devenv tasks run kanttiinit:test # Run tests
devenv tasks run kanttiinit:lint # Run clippy with strict warnings
devenv tasks run kanttiinit:fmt # Format all files
devenv tasks run kanttiinit:fmt:check # Check formatting
devenv tasks run kanttiinit:watch # Watch for changes and runcargo build --release- Fork the repository
- Create your feature branch
- Make your changes
- Use conventional commits:
feat: add feature,fix: bug fix,docs: update docs - Push and open a Pull Request
Tickets are handled with tk CLI tool.
- Kanttiinit.fi for the API
- Original C++ CLI contributors
