Blockstream / Blockstream/esplora

Support displaying Simplicity scripts

Open
#597 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
JavaScript
Stars
1.3k
Forks
514
Avg merge
1d 10h
Merged PRs (30d)
16

Description

### Feature Request: Add Simplicity Program Display for Taproot Script Path Spends

#### Description
With the upcoming launch of Simplicity on a public signet (e.g., testnet4 or similar), users will start creating, spending, and testing Simplicity-based transactions. To enhance usability and accessibility, the Esplora block explorer should support displaying Simplicity-specific details for transaction inputs that spend Taproot outputs via a Simplicity script path.

When viewing such an input, add a new, clearly labeled section in the input details panel. This section could include:

- **Heading**: "Simplicity Program" (to distinguish it from standard Bitcoin Script).
- **Human-Readable Disassembly**: A decoded, readable representation of the executed Simplicity program (e.g., bitcode parsing showing jets in use).
- **Tagged Merkle Root (TMR)**: The TMR as the unique contract identifier.
- **Optional Enhancements**: MAST visualization if applicable, to show the program's structure.

This feature should be enabled for Simplicity-supported networks like Liquid (where P2TR Simplicity spends are already possible) and the new signet/testnet.

#### Implementation Notes
- implementation on liquid.network for testing and stability, then extend to Bitcoin testnets/signets.
- Reference for Simplicity details: Ongoing work on transaction weight computation and jet costs; potential future upgrades may involve Taproot script versioning.
- Additional context and examples: [Gist on Simplicity Testnet Plans](https://gist.github.com/orangesurf/8121d556cd3eebf8da7ea6b993c2f778)
- here's an example transaction: 6e8d14e02b4255da8b2e0625be120207cc73b378e0edcafffd29f69d199cac70

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.