Giter VIP home page Giter VIP logo

doppler's Introduction

Doppler (A Lightning Domain-Specific Language)

  • GOAL: Create a DSL for Lightning that enables users to easily experiment with and test against various Lightning implementations. Whether it's for discovery testing, inclusion in a comprehensive integration testing suite, or simply investigating the interactions between different components. Given the potential occurrence of intriguing and unique issues across different implementations of Lightning, this project aims to simplify the lives of application developers reliant on the network.

The DSL should empower developers to compose a concise script that configures an entire cluster of nodes running a single docker network, even if they are of different implementation types, to suit precise testing requirements. This should provide a sensation similar to working with a set of Lego blocks, where all the necessary components are at your fingertips, ready to be assembled based on the idea at hand.

How to use:

  • More information on how to use this tool can be found here: USAGE.md

Supports:

  • creating a cluster of bitcoind nodes
  • setting up one or many as miners on a provided time interval
  • setting up and funding a cluster of lnd nodes, backed by a specified bitcoind node
  • outputing the cluster configuration as a docker-compose
  • making all the logs/data of the nodes available to the running of doppler
  • allowing to set values in LND's native configuration file
  • setup all the networking deterministically
  • OPEN_CHANNEL
  • SEND_LN (amp/keysend/bolt11 via subcommand)
  • SEND_ONCHAIN (only taproot addresses)
  • LOOP a set of commands over an optional interval
  • CLOSE_CHANNEL
  • support multiple node implementations (supports LND, CoreLN, Eclair)
  • add a cluster level UI to see how all the nodes connect (comes from https://github.com/litch/lightning-conformance/tree/master/operator)

Acknowledgments

  • Thank you polar for having such easy docker images to work with
  • Thank you litch for creating lightning-conformance which helped inspire this project
  • Thank you w3irdrobot for getting this project started and helping pick the tool to build the grammar in rust

Disclaimer

  • This is very much a work in progress, but feel free to use what works today and PR's are welcome!

doppler's People

Contributors

litch avatar tee8z avatar thebrandonlucas avatar w3irdrobot avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.