algorand node companion app
algorand node companion app is a mobile, web and desktop application that can manage, operate and track the status of your algorand node. the goal of the app is help new users easily set up their algorand node and provide a uniform interface to easily participate in consensus, all straight from the application.
features
- start & stopping node
- updating node
- sync using fast-catchup
- participating in consensus
- telemetry
- switching network
- mainnet metrics dashboard
supported os
algorand node companion app
the algorand node companion app securily stores your passphrase in an encrypted box and the encryption key is stored in the keychain for ios and keystore for android.
operating system | supported | encrypted |
---|---|---|
android | :heavy_check_mark: | :heavy_check_mark: |
ios | :heavy_check_mark: | :heavy_check_mark: |
web | :heavy_check_mark: | :x: |
windows | :heavy_check_mark: | :x: |
macos | :heavy_check_mark: | :x: |
linux | :heavy_check_mark: | :x: |
algorand node bridge
operating system | supported |
---|---|
macos | :heavy_check_mark: |
linux (tested on raspberry pi 4) | :heavy_check_mark: |
windows | :x: |
how does it work?
the algorand node bridge (anb) serves a websocket server that accepts json-rpc commands and translates them to shell commands that are executed on the node.
anb should be installed on the platform where the node is running.
the algorand node companion app (anca) opens a full-duplex communication channel over a single tcp connection to the algorand node bridge.
anca is optimized for mobile, but can also run on web and desktop (windows, mac & linux) – only tested on android, ios & web.
instructions
install algorand node bridge
the algorand node bridge should be installed on the operating system where your node is running.
find the latest version for your os on the releases tab.
it is recommended to run anb with a self-signed ssl certificate
# create a self-signed x509 certificate
openssl req -x509 -sha256 -days 365 -newkey rsa:2048 -keyout anb_pk.pem -out anb_cert.pem
# make and change directory to anb
mkdir ~/anb
cd ~/anb
# download the latest version for your os - see releases
wget [url-to-executable]
# change permissions
chmod 544 anb
# start a secure algorand node bridge - see arguments for all options
./anb --cert .ssh/anb_cert.pem --identity .ssh/anb_pk.pem --password pkpassword --verbose
after you run the algorand node bridge, the console will print something like the following:
serving at wss://192.168.66.157:4042
authorization token: xxxxx
you can now use the algorand node companion app to connect with the algorand node bridge and use the long-lived authorization token for a secure connection.
arguments
these arguments can be specified when running the node.
argument | abbreviation | description |
---|---|---|
–ip-address | -a | the ip address to connect with. defaults to the first ipv4 network address. |
–port | -p | the port to connect with. defaults to 4042. |
–working-directory | -d | the directory where the node lives. defaults to $home/node. |
–cert | -c | optional public key certificate |
–identity | -i | optional private key |
–password | / | the password for the identity/private key file. |
–token | -t | a long-lived authorization token. defaults to a random, cryptographically secure token. |
–verbose | -v | a flag to displays or gets extended information |
build from source
you can also build the algorand node bridge from source yourself and compile it using the dart sdk.
get the dart sdk
git clone
cd algorand_node_bridge
dart run bin/bridge.dart
you can also specify the ip address, port and debugging options:
dart run bin/bridge.dart -i 127.0.0.1 -p 4042 -d
or compile the source:
dart compile exe bin/bridge.dart -o bin/anb
cd bin
./anb
roadmap
- node discovery
- register offline
- manage & renew participation keys
- sign transactions using native algorand wallet, algosigner & myalgo connect
- tests
Comments are closed.