Node Pilot <> Harmony Integration
Summary
Decentralized Authority would like to apply for a Harmony token grant to:
- Add Harmony Validation to Node Launcher, a new, open-source, TypeScript, Docker deployment engine, making Harmony nodes and validator nodes deployable from any application with a few lines of JS code.
- Support full and archival nodes on both mainnet and testnets.
- Integrate Harmony JavaScript SDK into Node Launcher, giving developers the ability to create/update Harmony nodes/validators and access the full Harmony API from a single JavaScript source.
- Add Harmony one-click validation to Node Pilot, a user-friendly, GUI-driven node deployment application built on the Node Launcher engine.
- Add Harmony validator importer so existing validators can utilize Node Pilot with simplicity.
- Maintain and update Harmony nodes with all integrations in accordance to latest stable releases.
- Operate Harmony Validators to provide continual mainnet testing and build a long-term partnership.
Background
Shane and Ryan Burgett started developing Node Pilot in August 2020 after being unable to find a comprehensive node deploy/management solution. Shane was a full-time business development contributor to Pocket Network since January 2019. Ryan is a full-stack crypto application developer with years of experience in the areas of wallets, interoperability platforms, mining, and node deployment.
Motivation/Rationale
To keep blockchain networks both secure and censorship resistant, crypto projects need to have a strong node community that is decentralized and running the most up-to-date core software. However the technical skills required to run crypto nodes severely limit who can participate, and the lack of node toolings leaves most networks running out-of-date software. Decentralized Authority is driving a new solution that addresses node deployment on both a technical and user-experience level to democratize node running while adhering to industry best practices for each blockchain.
This was first done by building a new node deployment engine called Node Launcher that is approachable to all devs. Node Launcher is a TypeScript library that enables any application to deploy nodes and validators via Docker with only a few lines of Javascript code. For the first time, developers can programmatically build full stack blockchain applications using only JavaScript. No more CLI, bash scripts, or wrestling with docker config files. Blockchains that are supported in Node Launcher have a powerful node/validator tool that provides automatic version updating to ensure seamless network upgrades.
With Node Launcher addressing the technical side of node deployments, Node Pilot was created to be free-software that enables users to deploy, manage, and monetize crypto nodes and validators with a few clicks. Seamless Docker integration through Node Launcher brings enterprise-level security and scalability while providing users a simple, self-hosted GUI interface. No third party OS-level dependencies and automatic TLS certifications give users the ability to access their nodes with privacy and security. Node Pilot currently supports 10+ blockchain nodes and is bringing 1-click validation capabilities to non-technical users.
There are some limited node management platforms out there like DappNode and AVADO, which are great for simple node deployment, but are locked to a dedicated OS or proprietary hardware and lack the features required for someone to be an effective validator operator on most networks. Validators that are not run properly or run outdated core software become a burden on their networks. Decentralized Authority is designing flexible tools from the ground up to be just as easy as these other platforms while providing important features that make for good validator operators.
When users don’t have a user-friendly, self-hosting solution for participating in their favorite blockchains, their only option is to turn to hosting services where they must trust their keys to 3rd parties. When blockchains don’t have a diverse set of nodes supporting the network, the ecosystems become vulnerable to centralization, security risks, and performance issues. Many of these services are great, but crypto should be an ecosystem with options, and a solution like Node Pilot gives everyone the freedom to be an independent validator operator by overcoming the technical barriers that exist today.
Objective(s)
-
Give the Harmony community an approachable, fully self-hosted option for deploying/managing Harmony nodes/validations, while maintaining industry best practices and security.
-
Ensure Harmony node runners can always stay up-to-date with 1-click updates.
-
Open the door to multiple levels of monetization through seamless Pocket integration.
- Harmony Validators can “double dip” in the native ONE rewards and Pocket rewards.
-
Enable any applications to deploy and manage Harmony nodes with only JavaScript.
- This would give the Harmony ecosystem an approachable developer tool to create node deployment applications.
- Support all Harmony node types, including full and archival on both mainnet and testnets.
-
Provide support and high quality resources to demystify participating in the Harmony node community.
-
Provide the Harmony community with a node management platform that can scale to future Harmony features.
-
Enable Decentralized Authority to actively join in the Validator DAO and conduct mainnet validator testing.
- This will allow Node Pilot updates to be tested internally before being pushed to the larger community. It is crucial to ensure updates work on mainnet validators using software from Decentralized Authority.
-
Reduce pressure on the Harmony Foundation to take on more in-house, node development projects.
- Decentralized Authority would be a highly motivated partner, with alline incentives, to deliver, maintain, and grow this platform.
Deliverable(s)
- Add harmony node suite to Node Launcher
- Full nodes
- Validator nodes
- Mainnet and Testnet support
- Integrate Harmony JavaScript SDK into Node Launcher
- Add Harmony to Node Pilot v1
- Full Harmony node suite
- 1-click validation
- Import existing validators
- 1-click updating
- CLI Command Entry support via GUI
- Available for Node Pilot v1 launch
- User resources and documentation for Node Launcher and Node Pilot
- Written documentation
- Step-by-step guides
- Video tutorials for Harmony Validators
- VMs/images that enable 1-click deployments (date TBD after v1 launch)
- AWS
- Digital Ocean
- VMware
Budget
$30,000 grant to build initial integrations and documentation
- Node Launcher
- Harmony JavaScript SDK <> Node Launcher integration
- Node Pilot
- QA testing and support
- User Resources
$21,500 to operate Harmony ONE Validators for multiple shards
- Paid out at the competition of the integration for testing before the public launch
- 18 month lock-up
- Provides continual mainnet validation testing for both Node Launcher and Node Pilot
- Establish a long-term, cross-ecosystem partnership for support and maintenance.
Goals Beyond This Proposal
As Harmony grows to more features and services, Node Launcher / Node Pilot is designed to scale in tandem. Future features could include:
- Future service deployments
- Example: Trustless bridge deployments or other services that may accompany Harmony DAOs.
- Node Pilot <> Harmony DAO
- Node PIlot Mobile application (iOS & Android)
- Real-time notifications
- Node Pilot Fleets (enterprise-ready API platform for multi-instance orchestrations)
Contributor(s)
Shane Burgett - Pocket Network bizdev contributor with a background in business development, marketing, design, and media production.
Ryan Burgett - Full-stack Web3 application developer with 4+ years of experience in the areas of wallets, blockchain interoperability platforms, mining, and node deployment.