Jade Service Runner

23rd June 2019 Off By binary
Jade Service Runner
trading bonus no deposit

A Bridge for Decentralized Service Development

TLDR version

The Ethereum Classic Labs Core (ECLC) team recently created the Jade Service Runner, a service manager for JSON-RPC based services. Building upon the recent success of the OpenRPC specification, the Jade-Service-Runner is the first release of the team’s new Jade Suite of DApp development tools.

Core developer Zane Starr said, “The Jade Service Runner is a software development tool, that allows developers to support users running their own infrastructure. Service Runner is meant to ease the congitive load for users, while providing developers with nice features that make connecting to services easy”.

This isn’t just for Ethereum Classic; Ethereum will also benefit from this new tool, as it is the perfect interface for JSON-RPC interactions.

Service Runner is an opinionated JSON-RPC service manager, that provides daemonization, installation, and discovery for JSON-RPC based services.

Service Runner helps developers gain access to a user’s locally run services. It provides users with a management and installation tool, that allows developers to discover services and reliably request access to those services.

Jade Suite

The ECLC team is clearly focused on building with the entire p2p landscape in mind. Setting the tone with their first release, OpenRPC, the team is creating the foundational development layer that has been sorely missing from the blockchain ecosystem.

Jade suite is going to make building applications on top of ethereum and other p2p technologies easy as using popular web frameworks like rails. It’s not just a set of tools, but also a paradigm for application development. The first fundamental of the paradigm is that users should be able to choose the security model that best suits them. We achieve this by decomposing ethereum into pieces with specific roles, defining a specification for the individual components. The application developer need not concern themselves over the details of which version/vendor of xyz is the user running and where. — Zac Belford, ECLC developer

Oh and if you haven’t been keeping up with OpenRPC, the specification now supports Golang.

Jade Service Runner

Stevan Lohja, Technology Coordinator at ECLC explains “Jade-Service-Runner is a tool developers can use to simply run services in the background. For example, a DApp developer needs mainnet or testnet to deploy dapps against, so they can tell the Service Runner to run Geth or any other service they incorporate into their environment”. It’s this focus on simplicity that the team thinks will resonate with the development community, making the Service Runner (and the entire Jade suite), an essential tool box moving forward.

The team is so confident in the positive reception and use of the tool that they are already looking to the future.

One of the potential longer term plays is basically allowing jade service runner to be a p2p node that uses open-rpc discover to create a network of decentralized services that people can connect to. The service runner would then basically act as gateway that would let people use each others services or to scope their interactions to just use their local connections. — Zane Starr, ECLC developer

Better dApp Development

Service Runner improves the dApp development cycle, by reducing the number of steps required for running services that are local to the user, in addition to associated with relying on locally running JSON-RPC services.

To do this effectively, Jade Service Runner supports the following:

  • Allows dApp developers to specify what services they’d like to use
  • Provides defaults for the services to run
  • Provides users with an easy installation path
  • Provides reliable discovery of pre-existing services run by the service runner
  • Provides OpenRPC interface to the Service Runnner functionality, as well as the underlying services
  • Allows dApp developers the ability to retrieve reliable JSON-RPC connection information from the service
  • Provides typed interfaces to develop applications against

Getting Started

Install jade-service-runner using npm

npm install -g @etclabscore/jade-service-runner

It also has a javascript client:

npm install @etclabscore/jade-service-runner-client

Then require it into any module.

const { ServiceRunner } = require('@etclabscore/jade-service-runner-client');
const ERPC = require('@etclabscore/ethereum-json-rpc');
const serviceRunner = new ServiceRunner({ transport: { type: "http", port: 8002, host: "localhost" } });
const serviceName = 'multi-geth';
const successful = await serviceRunner.installService(serviceName);
if (successful === false) throw new Error('Service not installed')
const serviceConfig = serviceRunner.start(serviceName, 'kotti');
const erpc = new ERPC(serviceConfig);

to run the service runner:


Supported Services

Currently it supports multi-geth with the following environments:

  • mainnet (ETC)
  • kotti
  • ethereum
  • goerli
  • rinkeby

More Resources for Jade-Service-Runner and OpenRPC

  • Using OpenRPC Mock Server to test against an Ethereum JSON-RPC API
  • etclabscore/jade-service-runner

Want to learn more about Jade Service Runner and OpenRPC?

Ethereum Classic Labs is hosting a workshop with ETC developer, Zane Starr. If you are in the Bay Area, bring a laptop and code along at this must-attend event!

Jade Service Runner

Interested in getting more involved with ETC? We’re focused on accelerating the development of Ethereum Classic and need your help! Reach out to us to see how you can get more involved today!

Our team links: About, Github, MediumTwitter

Come chat with us on Discord

Jade Service Runner was originally published in Hacker Noon on Medium, where people are continuing the conversation by highlighting and responding to this story.

social trading binary options