Harbinger is a cross platform deployment manager for Akash that runs as an Electron desktop app. It directly interfaces with the Akash CLI via a REST API hosted locally on your system, which by nature grants you absolute control over your keys, deployments, and data.
Harbinger is completely open source, transparent, and uses whatever version of the Akash CLI that is installed on your system path to execute commands. This approach allows users to audit both Harbinger and Akash code bases to ensure nothing fishy is going on and commands are doing what they say they are doing.
Harbinger is very early in development and in its current state, allows wallets to be created, deleted, imported, and read. With a valid wallet, a user can view details about its balance and generate certificates if the wallet has sufficient funds.
Harbinger utilizes a SQLite, Express, Vue, Node (SEVN) stack via Electron to interface with the Akash CLI and provide visualization. The backend hosts an Express REST API with endpoints that correspond to different Akash CLI commands. For example, sending a POST request to http://localhost:3000/akash/keys will generate a new private key or wallet and store it in the default secure location depending on the OS, as is the default behavior of the Akash CLI.
Most of my backend development process used test driven development written using Mocha, Chai, and Superagent in hopes that if someone wanted to fork or contribute to this code they could test their newly added functionality works and integrates with the existing code base.
The frontend uses Electron & Vue with Vuex and Vuetify for managing global app data and providing a visually appealing interface for users to interact with (I am a horrible artist :P). Electron allows the app to be served as a cross platform desktop app or web app.
For additional details, pictures/gifs, and installation instructions checkout the GitHub readme at:
I will be posting a video soon covering the app’s current functionality, how it looks, and what I hope to accomplish. Even though the hackathon is drawing to a close I would love to finish up the rest of the app at least to MVP status and attempt to qualify for additional seed funding.
Thanks for checking out my project!