dooris/README.md
lilly 5a550e4594
All checks were successful
Build Container / Build Container (push) Successful in 1m32s
document configuration variables in README.md
2026-05-15 08:44:28 +02:00

40 lines
1.6 KiB
Markdown

# Dooris
Dooris setup using HomeMatic with Web UI, API and OIDC integration.
Based on prior work of [hmdooris](https://git.hamburg.ccc.de/CCCHH/hmdooris).
Project structure:
```
├── api # Python application interacting with HomeMatic and providing the API.
└── app # Web UI
```
## Configuration
The final application can be configured either via CLI arguments or via environment variables.
If both are given, the CLI flag takes precedence.
THe following table lists all available configuration parameters:
| CLI Flag | Environment Variable | Required? | Default Value |
| -------- | -------------------- | :-------: | ------------- |
| `--openid-issuer` | `DOORIS_OPENID_ISSUER` | Yes | *None* |
| `--openid-scope` | `DOORIS_OPENID_SCOPE` | No | `openid profile` |
| `--openid-client-id` | `DOORIS_OPENID_CLIENT_ID` | Yes | *None* |
| `--openid-client-secret` | `DOORIS_OPENID_CLIENT_SECRET` | Yes | *None* |
| `--base-url` | `DOORIS_BASE_URL` | Yes | *None* |
| `--serve-static` | `DOORIS_SERVE_STATIC` | No | *None* |
| `--ccujack-url` | `DOORIS_CCUJACK_URL` | No | `https://hmdooris-ccu.ccchh.net:2122` |
| `--ccujack-user` | `DOORIS_CCUJACK_USER` | Yes | *None* |
| `--ccujack-password` | `DOORIS_CCUJACK_PASSWORD` | Yes | *None* |
## API Development
Most things should automatically be set up with the included [direnv script](./.envrc.dist) but if you don't use that, take the following steps:
1. Go to the api/ directory
2. Run `uv venv` to create a python virtual environment
3. Install all dependencies of the dooris project into that virtual environment with `uv sync`
4. Run a development server `watchexec -r -w src/ uv run dooris-api`