Endra App

P2P Messenger

Based on IPFS, the Walytis database blockchain, and Walytis-Identities DID management technologies, this peer to peer messenger support multiple devices per user, and group chats.

Run From Source

Install Prerequisites:

./install_prereqs.sh
pip install -r requirements.txt
pip install -r requirements-dev.txt
USE_PANGO=0 python .

Environment Variables

  • USE_PANGO (defaults to true on Linux): Use the Pango text provider to enable broader character & emoji text rendering support
  • USE_BRENTHY (defaults to false): Instead of running an embedded IPFS and Walytis node, use the separately running system services for IPFS and Walytis. This enables faster loading times. To set up IPFS & Walytis in this way, install Brenthy

DevOps

For speedy starting and termination of the app, on Linux, install Brenthy to run Walytis & IPFS as a systemd service. Then run Endra with:

USE_PANGO=0 USE_BRENTHY=1 python tests/test_app.py

Pressing Ctrl+C in the terminal should promptly close the Endra app.

Rerunning the app this way overwrites the app's appdata with a cache stored in tests/appdata, so that it doesn't matter if the app crashes and corrupts its appdata.

To save the current appdata, close the endra app, and run:

tests/update_appdata.sh

From now on, every time you run tests/test_app.py, the new appdata state will be loaded.

To reset the appdata, run:

rm -rf tests/appdata
Description
No description provided
Readme MIT-0 2.7 MiB
Languages
Python 57.1%
Shell 32.1%
kvlang 8.6%
Makefile 2.2%