A simple chat room application showing an example Rolling QR Code implementation for initial auth.
For each chat room, the QR Code changes periodically. Once the user scans the code and follows the link, the server initializes a session via a cookie.
The chat is a simple websocket implementation - that bases its auth on the cookie set previously.
- Multiple room support (active users, hidden/public rooms)
- Rolling QR Code
- Session based websocket auth
# install dependencies
pip install -r requirements.txt
# run with uvicorn
uvicorn app:app
# quick and dirty run in local network
BASE_URL="http://$(ip -4 addr show <interface> | grep -oP '(?<=inet\s)\d+(\.\d+){3}'):8000" uvicorn app:app --host 0.0.0.0