Automatic booking of group classes
-
Ensure Python 3.10+ is installed
-
Install dependencies using Poetry (install from https://python-poetry.org/docs/#installation)
poetry install
-
In the
rezervo
directory, define.env
andconfig.json
based on.env.template
andconfig.template.json
. This includes defining Auth0 tenant details, credentials for Slack notifications and app-wide booking preferences.π³ Web Push variables
Web push requires a VAPID key pair. This can be generated with the following command using
openssl
:openssl ecparam -name prime256v1 -genkey -noout -out vapid_keypair.pem
The private key can then be encoded as base64 and added to the
.env
file asWEB_PUSH_PRIVATE_KEY
:openssl ec -in ./vapid_keypair.pem -outform DER|tail -c +8|head -c 32|base64|tr -d '=' |tr '/+' '_-' >> vapid_private.txt
Similarly, the public key can be encoded as base64 and included in the client application receiving the notifications:
openssl ec -in ./vapid_keypair.pem -pubout -outform DER|tail -c 65|base64|tr -d '=' |tr '/+' '_-'|tr -d '\n' >> vapid_public.txt
- Make sure you have defined
.env
andconfig.json
as described above - With docker and docker compose installed, run
docker compose -f docker/docker-compose.dev.yml up -d --build
- Within the container, explore available cli commands
rezervo --help
poe fix
Add your own chain by adding it to ACTIVE_CHAINS
in rezervo/chains/active.py
.
A template for a production deployment is given in docker-compose.template.yml
, which uses the most recent rezervo
Docker image.