A Flutter application to easily manage and control your Algorand nodes.

Overview

Algorand Node Companion App

Stars Issues MIT License

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 ✔️ ✔️
iOS ✔️ ✔️
Web ✔️
Windows ✔️
MacOS ✔️
Linux ✔️

Algorand Node Bridge

Operating System Supported
MacOS ✔️
Linux (tested on Raspberry Pi 4) ✔️
Windows

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

Video

IMAGE ALT TEXT

Changelog

Please see CHANGELOG for more information on what has changed recently.

Contributing & Pull Requests

Feel free to send pull requests.

Please see CONTRIBUTING for details.

Credits

License

The MIT License (MIT). Please see License File for more information.

You might also like...

Simple weekly financial control project.

lion_tax A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you started if this

Nov 11, 2021

A GUI to quickly manage your WSL2 instances

A GUI to quickly manage your WSL2 instances

WSL2 Distro Manager A quick way to manage your WSL2 instances with a GUI. Install This app is available on the Windows Store or as a direct download f

Dec 29, 2022

An App To manage all your tasks with firebase backend

An App To manage all your tasks with firebase backend

🔥 Todo App An App To manage all your tasks with firebase backend. Star ⭐ the repo if you like what you see 😉 . ✨ Features : Login/SignUp with Fireba

Dec 12, 2022

Android application that manage all the information of Pandemic Covid-19 in Vietnam.

COVID-19 Health-care Management Android application that manage all the information of Pandemic Covid-19 in Vietnam. Overview Here is the detail and t

Dec 4, 2021

A package that lets you include a cool, nice looking and validated Password TextFormField in your app to enhance user experience. The package is fully & easily modifiable.

A package that lets you include a cool, nice looking and validated Password TextFormField in your app to enhance user experience. The package is fully & easily modifiable.

A package that lets you include a cool, nice looking and validated Password TextFormField in your app to enhance user experience. The package is fully

Jan 1, 2023

Easily scan your documents on the go with Paper. Scan those documents at ease with real-time document detection, multi paged pdfs, optimized and cleaner clicks from an easy to navigate UX

Easily scan your documents on the go with Paper. Scan those documents at ease with real-time document detection, multi paged pdfs, optimized and cleaner clicks  from an easy to navigate UX

Easily scan your documents on the go with Paper. Scan those documents at ease with real-time document detection, multi paged pdfs, optimized and cleaner clicks from an easy to navigate UX

Dec 16, 2022

FileManager is a wonderful widget that allows you to manage files and folders, pick files and folders, and do a lot more. Designed to feel like part of the Flutter framework.

FileManager is a wonderful widget that allows you to manage files and folders, pick files and folders, and do a lot more. Designed to feel like part of the Flutter framework.

File Manager FileManager is a wonderful widget that allows you to manage files and folders, pick files and folders, and do a lot more. Designed to fee

Dec 30, 2022

A mobile image uploader in which you can upload image to your personal gallery from either your camera or mobile gallery and it can detect your current geographic location and address using firebase firestore and storage.

Image Uploader In Flutter About It is an Image Uploader gallery which tracks your address from which you're uploading using Flutter and Image picker.

Dec 20, 2022

A Flutter plugin to retrieve and manage contacts on Android and iOS devices. Maintainer: @lukasgit

A Flutter plugin to retrieve and manage contacts on Android and iOS devices. Maintainer: @lukasgit

contacts_service A Flutter plugin to access and manage the device's contacts. Usage To use this plugin, add contacts_service as a dependency in your p

Dec 28, 2022
Releases(v0.0.1-beta.2)
Owner
Tomas Verhelst
Non-Fungible Developer
Tomas Verhelst
About This is Personal Expenses Planner. You can add your expenses in to the app and manage your transaction. and you can see How much did you spend on which day. I developed this project using flutter.

expense_planner A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you started

Darshit Rudani 5 Jul 6, 2022
BankGit helps you manage your account and transactions more efficiently by breaking your account into branches for various purposes and then making transactions directly from them.

Bank Git Web Hosted Here : https://bank-management-45848.web.app/ Bank Git is an application built with Flutter and Firebase to help you manage your b

Yash Johri 27 Dec 26, 2022
📱 CyBear Jinni App is the app to control CyBear Jinni Hub 💡 remotely from your Android, IOS and Web Browser

CyBear Jinni App Welcome This repository is in charge of the CyBear Jinni App and is part of the CyBear Jinni Smart Home system. The CyBear Jinni App

CyBear Jinni 104 Dec 1, 2022
Easy to use open source Hub 🕸️ to control your smart devices from one app.

CyBear Jinni Hub Welcome! This repository is in charge of controlling smart devices and is part of the CyBear Jinni Smart Home system. The software is

CyBear Jinni 26 Nov 23, 2022
Easy to use open source Hub 🕸️ to control your smart devices from one app.

CyBear Jinni Hub Welcome! This repository is in charge of controlling smart devices and is part of the CyBear Jinni Smart Home system. The software is

CyBear Jinni 13 Jul 22, 2021
A new Flutter Application to control self build lamps for my personal use.

A new Flutter Application to control self build lamps for my personal use. You need extra hardware & software for getting this project running. This is just the code of the App.

null 1 Mar 2, 2022
Tesla car app using Flutter that works both android and iOS. Users can unlock any door, check battery status also control the air cooler temperature and check the psi of the tires.

Tesla App Tesla car app using Flutter that works both android and iOS. Users can unlock any door, check battery status also control the air cooler tem

null 12 Dec 18, 2022
The FlexGrid control provides a powerful and quickly way to display data in a tabular format. It is including that frozened column/row,loading more, high performance and better experience in TabBarView/PageView.

flex_grid Language: English| 中文简体 The FlexGrid control provides a powerful and quickly way to display data in a tabular format. It is including that f

FlutterCandies 39 Nov 8, 2022
A personal app to track and manage your expenses.

?? Batua ?? A Personal App to track and manage your expenses! Batua is the best money manager and daily expense tracker to automatically and securely

Pratyush M 45 Dec 22, 2022
Para-managment: The app is to monitor and manage your personal finance

Pare | پارە Pare App Demo The app is to monitor and manage your personal finance You have a category for each category you have category name, icon, a

Salar Pro 3 Mar 20, 2022