Interledger Rust Alpha Release

Evan Schwartz
Interledger Blog
Published in
4 min readOct 7, 2019

Simple APIs for sending and receiving payments, and instructions for connecting your node to the testnet

Originally posted on Coil.com.

Today, I’m excited to announce the alpha release of the Interledger.rs node and Xpring Interledger testnet nodes. Interledger.rs aims to be the fastest and easiest to use implementation of Interledger and we’re looking forward to seeing what you build with it! This release includes simple APIs for sending and receiving payments, as well as instructions for connecting your node to the testnet.

For background on Interledger, take a look at Interledger: How to Connect All Blockchains and Value Networks.

Interledger.rs Node: What’s in the Box

Interledger.rs is designed to be easy to use and scale.

The main way to interact with Interledger.rs today is through the Interledger.rs “node”. This bundles all the functionality you need to send, receive, and forward Interledger packets. It also includes a simple HTTP API and CLI that lets you interact with the node without writing any Rust code.

The components of Interledger.rs are almost entirely stateless so that we will be able to horizontally scale node instances to process any number of packets. Coil alone sent 10 billion Interledger packets in their first year. Building the Internet of Value requires many times more capacity than traditional payment companies like Visa can do today.

In future releases we’ll focus more on performance testing and scaling so stay tuned for more updates on scaling Interledger.rs infrastructure.

Integrating “All the Money”

Interledger.rs also implements the new settlement architecture, which is designed to simplify integrations with new ledgers or settlement systems. You can build a Settlement Engine that implements the settlement API in any programming language and it will be able to work with Interledger.rs.

Try out these examples to see the node settle using Settlement Engines written in Rust and TypeScript. It initially supports XRP and ETH (Bitcoin, via the Lightning Network, will be released soon). More currencies will be added in the future and we would love your help integrating your favorite blockchain, Layer 2 scaling solution, or other settlement systems to connect #allthemoney!

Unlike the older Interledger “plugin” model, the new settlement architecture allows integrations to be reused across different implementations of Interledger. It uses an HTTP API to communicate between the two components, so the integration is not limited to one specific programming language. This architecture also unbundles settlement messages and node-to-node communication so that settlement engine authors do not need to think about how messages are exchanged and the same engine can be used with different node-to-node protocols (HTTP, Websockets, etc).

Xpring Testnet Nodes

One of the recurring issues we’ve heard from developers experimenting with Interledger has been the poor state of the Interledger testnet. As part of the new xpring developer platform for developers, we will be hosting Interledger.rs testnet nodes on professional-grade infrastructure. These nodes are live today with XRP and ETH settlement, and more currencies will be added in the future.

Create your credentials for the testnet here. You can send and receive test Interledger payments, as well as connect your own Interledger.rs node to the testnet.

What’s Next

In the short-term, we’ll be focused on polishing the developer experience and adding more features to the node and HTTP API. After that, we’ll be working on performance and scaling, integrating more currencies, and implementing higher-level functionality for specific use cases like peer-to-peer payments, Web Monetization, and paid APIs.

New contributors are very welcome and we would love to help get you involved in Interledger.rs. Even if you’ve never written Rust or worked with Interledger before, we’re happy to mentor new contributors and coach you through making your first submission to the project.

You can get in touch with us on the #rust channel in the Interledger slack or by posting an issue in the Github repo.

About Rust

Speed + Security + Community = ❤️

Rust is an amazing technology. As many others have written, it has a winning combination of performance and safety that makes it ideal for financial applications like Interledger, blockchain projects, and many other use cases (who else is excited by Web Assembly?). To top it off, the Rust team and ecosystem have created a welcoming community of tireless maintainers, contributors, and friendly question-answerers that is a pleasure to be part of. If you haven’t tried programming in Rust yet, I would highly recommend it!

Thanks

Thank you to:

--

--