Capstone

Secured byBitcoin.

Capstone has no servers holding funds and no admin keys over your editions. It is a contract on Stacks, and Stacks writes itself into Bitcoin.

Capstone contract03
Stacks02
Bitcoin01
  1. 03

    Capstone contract

    A Clarity program that handles launch, mint, withdraw and reveal. Every sale is a public state change you can audit.

  2. 02

    Stacks

    A Bitcoin layer for smart contracts. Miners spend BTC to produce blocks, and each block hash is committed to Bitcoin.

  3. 01

    Bitcoin

    The base settlement layer. Rewriting a Capstone mint would mean rewriting Bitcoin blocks.

03 — Settlement

Fast to mint.
Slow to undo.

Stacks gives you quick blocks for minting. Bitcoin gives you the history no one can rewrite. Capstone collections get both, because the chain they live on writes itself into Bitcoin.

Stacks blocksfast · seconds
₿
₿
₿
₿
₿
₿
₿
₿
₿
₿
₿
₿
Bitcoin blocksfinal · ~10 min

Stacks tip

—

Bitcoin block

—

Network

testnet

Platform fee

0%

01

Proof of Transfer

Stacks miners spend BTC to write each block, and the hash of every Stacks block is committed into a Bitcoin transaction. Your mint inherits that history.

02

Post-conditions

The wallet signs an exact spending limit next to the call. If a contract tries to move one micro-STX more, the network rejects the whole transaction.

03

Decidable Clarity

Clarity is interpreted, not compiled, and has no unbounded loops. What you read in the contract source is exactly what runs on-chain.

The whole surface

Every function, and who can call it.

FunctionTypeCallerWhat it does
launch-collectionWriteCreatorOne-time. Sets name, URI, price, supply and opens the sale.
mintWriteAnyoneTransfers exactly the price in STX and mints the next id to the caller.
withdraw-proceedsWriteCreatorSends the entire contract balance to the chosen recipient.
set-base-uriWriteCreatorUpdates metadata and emits a SIP-019 notification.
transferWriteOwnerSIP-009 transfer between principals.
get-launch-detailsReadAnyoneFull sale state in a single call.
get-proceedsReadAnyoneSTX currently held by the contract.
get-owner · get-token-uri · get-last-token-idReadAnyoneStandard SIP-009 reads.