Skip to content

stringhandler/awesome-simplicity

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 

Repository files navigation

Awesome Simplicity Awesome

A curated list of resources, tools, libraries, and projects related to Simplicity and SimplicityHL — the low-level and high-level blockchain scripting languages designed for safe, expressive smart contracts.

Simplicity is a typed, combinator-based functional language for cryptocurrencies. SimplicityHL is a higher-level language that compiles to Simplicity, making it more accessible to developers.


Disclaimer: This list is maintained by a Blockstream employee in a personal capacity. The resources linked here are not endorsed by Blockstream and may not reflect Blockstream's views or interests. Links are not monitored for safety — inclusion does not imply any trust, audit, or endorsement of the linked software or projects. Use at your own risk.


Contents


Official

  • BlockstreamResearch/simplicity - The canonical Simplicity implementation in Haskell, C, and Coq, by Blockstream/Elements Project.
  • rust-simplicity - Official Rust implementation of Simplicity, supporting encoding, decoding, type-checking, and execution. Includes simplicity-sys, FFI bindings to the C library.
  • simplicity-codespace - GitHub Codespace for getting started with Simplicity development, by Blockstream.

Documentation

  • SimplicityHL Documentation - Official language reference and guides for SimplicityHL.
  • Transaction Manifest Book - Cookbook-style guide for writing transaction manifests: portable, machine-readable descriptions of multi-UTXO transactions on Bitcoin and Liquid, including Simplicity covenant protocols.

SimplicityHL

Higher-level languages and compilers that target Simplicity.

  • BlockstreamResearch/simplicityhl - A high-level language for writing Bitcoin smart contracts that compiles to Simplicity, with Rust-inspired syntax.
  • SimplicityHL Examples - Lots of example programs written in SimplicityHL, including fee bumps, vaults, and covenants.

Simplicity Unchained

Simplicity Unchained is an initiative by Blockstream Research to make Simplicity accessible on a public testnet, enabling developers to write, deploy, and experiment with Simplicity smart contracts without running a local node.

  • Simplicity Unchained Testnet - Public testnet for deploying and interacting with Simplicity smart contracts in a live environment.
  • simplicity-unchained - Core tooling and infrastructure for the Simplicity Unchained testnet, including node configuration and contract deployment utilities.
  • simplicity-unchained-web-demo - Browser-based demo for writing and executing Simplicity programs on the testnet, useful for learning and prototyping without a local setup.

Tools

Compilers

  • BlockstreamResearch/simplicityhl - Official SimplicityHL compiler, builds projects into Simplicity bytecode.
  • simfony-cli - SimplicityHL compiler by StarkWare. Supports run, build, test, and deploy. (possibly unmaintained)
  • simply - Another SimplicityHL compiler by StarkWare. Supports run, build, and deploy.(possibly unmaintained)
  • go-simplicity - Transpiler that converts Go code into SimplicityHL, letting developers write Bitcoin/Elements smart contracts in idiomatic Go syntax.

Frameworks & SDKs

  • smplx - A blazingly-fast, UX-first Simplicity development framework in Rust, offering a CLI (simplex), SDK, and local Liquid regtest environment for building, testing, and deploying smart contracts on Liquid.
  • smplx-template - Template repository for bootstrapping new projects with the smplx framework.
  • @hazbase/simplicity - TypeScript/Node.js SDK for working with Simplicity contracts on Liquid, covering the full workflow from compiling SimplicityHL, deriving addresses, funding, and execution. Supports recursive covenants, LP fund settlement, and gasless transactions via relayer/sponsor wallets.

IDE

Helpers

Wallets

  • simfony-wallet - Liquid Bitcoin wallet with Simplicity support, by StarkWare. (possibly unmaintained)
  • simpiwallet - Liquid Bitcoin wallet with Simplicity support (abandoned).
  • txmanifest-wallet - Declarative engine and CLI wallet that executes transaction manifests on Liquid/Elements. Write a txmanifest.json declaring what a transaction does and the wallet handles UTXO resolution, covenant address computation, PSET building, and signing, backed by SimplicityHL covenant programs.

Projects

Applications and protocols built using Simplicity smart contracts.

  • deadcat - Desktop app for trading binary prediction markets on the Liquid Network, using Simplicity covenants for on-chain settlement.
  • fadroma - Cross-chain dApp development framework with SimplicityHL integration for Bitcoin, Liquid, and Elements, built in TypeScript/Rust on the Deno runtime.
  • simf - Standalone WebAssembly SDK for compiling, deploying, and executing SimplicityHL smart contracts from any JavaScript/TypeScript environment.
  • simf-app - Prototype escrow, vault, and oracle application on Elements using SimplicityHL, demonstrating fund locking with conditions tied to external data attestations.
  • stark-symphony / stark101 - STARK verifier implemented in SimplicityHL, by StarkWare.
  • stark-symphony / stwo-verifier - STWO verifier implemented in SimplicityHL, by StarkWare.
  • simplicity-travel-rule - FATF Travel Rule compliance for Liquid using SimplicityHL. Embeds encrypted sender/recipient data in transaction witnesses and uses an on-chain Simplicity program to prove the encryption is valid, ensuring regulatory data can be decrypted by exchanges and observers but not the public.
  • shrincs-simplicity-verifier - Post-quantum hash-based signature scheme verifiers (Lamport, WOTS, SHRINCS/SPHINCS+) implemented in Simplicity, by Blockstream Research. Work in progress; research use only.
  • simplicity-lending - Lending protocol implemented in Simplicity, by Blockstream Research.
  • precop - Predictive Covenant Oracle Protocol: a Bitcoin L1 DeFi protocol implementing Collateralized Debt Positions (CDPs) and a constant-product AMM/DEX as covenant-enforced UTXO state machines. Uses five Simfony/Simplicity contracts in a MAST structure, leveraging jets such as output_amount, output_script_pubkey_hash, multiply_64, and ge_128 to enforce financial invariants trustlessly. Currently alpha, tested on Mutinynet.

Blockstream Turin Simplicity Hackathon

Projects submitted to the Blockstream Turin Simplicity Hackathon.

  • SimplySave - Non-custodial portfolio rebalancing wallet that automates asset allocation (e.g. LUSDT/LBTC) on Liquid without a trusted third party.
  • LicenseLoop - Prototype digital-license marketplace on Liquid backed by a Simplicity recursive resale covenant.
  • DeadDrop Vault - Bitcoin-native inheritance and emergency recovery system using Simplicity spending paths: owner, heir (after inactivity timeout), and joint owner–guardian recovery.
  • Mosaik - Trustless, permissionless asset exchange on Liquid where each order is a UTXO (Tessera) governed by a Simplicity covenant enforcing trade terms, with Nostr-based orderbook discovery.
  • PQ Liquid Wallet - Liquid wallet that signs covenant spends with hash-based Lamport signatures, providing quantum-resistant security built on Blockstream's on-chain Simplicity verifier.
  • Duopay - Trustless 2-of-2 co-buyer escrow in SimplicityHL on Liquid: funds release only when both buyers confirm delivery, or refund after timeout, with no middleman or admin key.

Mainnet Transactions

Notable Simplicity transactions on the Liquid mainnet.

Papers & Research

  • Simplicity: A New Language for Blockchains - Russell O'Connor's foundational paper (2017).
  • Building STARKs in Simplicity - StarkWare blog post on implementing STARK proof systems using Simplicity.
  • RGB assets on Liquid, explained - KaleidoSwap proof of concept anchoring RGB assets natively on Liquid, where a SimplicityHL covenant locks an RGB seal UTXO so that consensus itself rejects any spend not carrying an opret RGB commitment at output 0 — introspection Bitcoin Script cannot express. Also covers cross-chain atomic swaps of RGB assets between Bitcoin and Liquid, and covenant patterns for RGB lending, vault custody, and market-maker inventory protection. (code, article version)

Acknowledgements

Contributing

Contributions welcome! Please read the contribution guidelines first, or just open a PR with a link and a short description. Items should be actively maintained, notable, or meaningfully useful to the Simplicity ecosystem.

About

No description, website, or topics provided.

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors