Websocket back-end server for Feather wallet
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tobtoht 04e10f6d2b Merge pull request 'Add selsta nodes' (#13) from tobtoht/feather-ws:selsta_nodes into master 10 months ago
data Add selsta nodes 10 months ago
fapi rpc_nodes: add bad node reason 10 months ago
utils Initial commit 1 year ago
.gitignore Initial commit 1 year ago
Dockerfile Await task HistoricalPriceTask._load() and adjust Dockerfile to expose 10 months ago
LICENSE Initial commit 1 year ago
README.md Feather-ws rewrite; 10 months ago
asgi.py Feather-ws rewrite; 10 months ago
docker-compose.yml Feather-ws rewrite; 10 months ago
requirements.txt Feather-ws rewrite; 10 months ago
run.py Feather-ws rewrite; 10 months ago
settings.py_example Feather-ws rewrite; 10 months ago



Back-end websocket server for Feather wallet.

  • Quart web framework, Py3 asyncio
  • Redis

Coins supported

  • Monero
  • Wownero

See also the environment variables FEATHER_COIN_NAME, FEATHER_COIN_SYMBOL, etc. in settings.py.


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 Feather wallet starts up, it will connect to this websocket server and receive the information listed above which is necessary for normal operation.

See fapi.tasks.* for the various tasks.


Requires Python 3.7 and higher.

virtualenv -p /usr/bin/python3 venv
source venv/bin/activate
pip install -r requirements.txt

export FEATHER_DEBUG=true
python run.py

Note that run.py is meant as a development server. For production, use asgi.py with something like hypercorn.


In production you may run via docker;

docker-compose up

Will bind on Modify docker-compose.yml if necessary.