bitcoindevkit / bitcoindevkit/bdk-cli

A Running list of bdk-cli demo ideas

Open
#111 0 comments 0 reactions 1 assignee Claimed by @rajarshimaitra View on GitHub
discussion
Dominant language
Rust
Stars
141
Forks
99
Avg merge
6d 14m
Merged PRs (30d)
1

Description

with the `regtest-*` features and bdk-cli `repl` mode various multisig and other smart contracting situations can be demonstrated with bdk-cli..

Examle: Show an workflow of a Liquid like federation using a corresponding descriptor and bdk cli.

These demos can be recorded in various forms.
- Tutorial on the website.
- A demo videos in the youtube channel.
- Add it as a integration tests as both code level demo as well as consistency of these workflows with BDK API.

The general approach for a trial can be something like this
- Use the https://min.sc/ compiler to create your own weird descriptor.
- Split the descriptor for different parties involved in the compiler
- Start multiple wallet `repl` terminals with each parties descriptor. They will default connect to a single regtest node so all parties will be in sync
- Play around making transactions for various contract situations..

With this in mind we can start making a list of such interesting smart contracting situations with bitcoin scripts and demonstrate them out through BDK. Below is a list of basic ideas I imagined. Please comment below with more interesting contract ideas.

- [ ] Basic demo of a single sig wallet. (An test version of this is included in #102 )
- [ ] Basic 2-of-3 multisig demo
- [ ] Multisig with time locks. Something like @sandipndev cooked [here](https://bitcoindevkit.org/blog/hidden-power-of-bitcoin/#retention-bonus-smart-contract-with-bitcoin).
- [ ] A Liquid like federation demo
- [ ] An HTLC lighting contract demo. Playing out what exactly happens with with lighting state updates and penalty mechanisms.



Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.