/starlight

Layer 2 payment channel protocol for the Stellar network.

Primary LanguageGoApache License 2.0Apache-2.0

Stellar
Creating equitable access to the global financial system

Starlight Protocol

Go Reference Discussions

Starlight is a prototype layer 2 payment channel protocol for the Stellar Network. Starlight has existed in a couple different forms. The previous version of Starlight lives at interstellar/starlight.

Have a use case for payment channels on Stellar? Tell us about it here.

This repository contains a experiments, prototypes, documents, and issues relating to implementing the Starlight protocol on the Stellar network. Protoypes here are dependent on Protocol 19 and Core Advancement Protocols, CAP-21 and CAP-40. You can experiment with the Starlight protocol by using the testnet, or running a Stellar network in a docker container. To find out how, see Getting Started.

Diagram of two people opening a payment channel, transacting off-network, and closing the payment channel.

The Starlight protocol, SDK, code in this repository, and any forks of other Stellar software referenced here, are experimental and not recommended for use in production systems. Please use the SDK to experiment with payment channels on Stellar, but it is not recommended for use with assets that hold real world value.

Try it out

Run the example console application with testnet:

git clone https://github.com/stellar/starlight
cd examples/console
go run .
>>> help

Run two copies of the example console application and connect them directly over TCP to open a payment channel between two participants. More details in the README.

Get involved

Build and experiment

Discussions

Protocol 19

The code in this repository is dependent on changes to the Stellar protocol coming in Protocol 19, specifically the changes described by CAP-21 and CAP-40. Protocol 19 is released.