mirror of
https://git.wownero.com/wowlet/wowlet-backend.git
synced 2024-08-15 01:03:13 +00:00
The back-end websocket server for wowlet.
data | ||
utils | ||
wowlet_backend | ||
.gitignore | ||
asgi.py | ||
docker-compose.yml | ||
Dockerfile | ||
LICENSE | ||
README.md | ||
requirements.txt | ||
run.py | ||
settings.py_example |
wowlet-backend
Back-end websocket server for wowlet.
- Quart web framework, Py3 asyncio
- Redis
See also the environment variables WOWLET_COIN_NAME
, WOWLET_COIN_SYMBOL
, etc. in settings.py
.
Tasks
This websocket server has several scheduled recurring tasks:
- Fetch latest blockheight from various block explorers
- Fetch crypto/fiat exchange rates
- Fetch latest Reddit posts
- Fetch funding proposals
- Check status of RPC nodes (
data/nodes.json
)
When Wowlet (the wallet application) starts up, it will connect to this websocket server and receive the information listed above which is necessary for normal operation.
See wowlet_backend.tasks.*
for the various tasks.
Development
Requires Python 3.7 and higher.
virtualenv -p /usr/bin/python3 venv
source venv/bin/activate
pip install -r requirements.txt
export WOWLET_DEBUG=true
python run.py
Note that run.py
is meant as a development server. For production,
use asgi.py
with something like hypercorn.
Docker
In production you may run via docker;
docker-compose up
Will bind on http://127.0.0.1:1337
. Modify docker-compose.yml
if necessary.