Design a token, validate it against the exact on-chain PRL-20 rules, then
inscribe the deploy and mint operations with a real Taproot
commit → reveal flow. Everything is built and signed
locally in your browser — no server, no custody, no build step.
Mainnet is live. Real PRL will move if you broadcast.
Practice on testnet first — switch networks in Settings below.
Settings
Saved in this browser's localStorage only. The Blockbook default only covers
mainnet — there is no verified public testnet endpoint, so testnet users must
supply their own. Endpoints must allow CORS from this page's origin.
Design your token
Plan:
Inscription JSON — byte-exact, this is what gets inscribed
{}
Mint tokens
PRLS mint rules. Amount is fixed at 100000 per mint and each
credited mint pays a 1 PRL fee to the launch operator's fee recipient.
The recipient address is not universal — get it from your Pearlscriptions indexer
operator or release manifest and paste it below. The launcher will never guess it for you.
Inscription JSON
{}
Wallet
Keys are generated with crypto.getRandomValues and a BIP-39
mnemonic, derived along m/86'/coin'/0'/0/0 (BIP-86 Taproot).
Nothing is stored — closing or reloading this page wipes the wallet
from memory. Back up the mnemonic before funding the address.
Recovery phrase — write it down, never share it
Address
Fund this address to pay for the commit and reveal transactions.
Import WIF
1 · Operation
2 · Funding
The Launch tab uses the wallet from the Wallet tab. UTXOs are read from your Blockbook.
3 · Build transactions
Launcher fee (disclosed): mainnet launches add a flat
0.05 PRL launcher fee as its own output in the reveal transaction, paid to the
builder address in the footer below — you will see it as its own line in the cost breakdown
before you sign or broadcast anything. Testnet launches pay none. This fee is separate from
the network (miner) fees, and separate from the PRLS 1 PRL mint fee, which goes to the
Pearlscriptions indexer operator, not to the builder.
Commit transaction — funds the reveal
txid
Reveal transaction — publishes the inscription
txid
Token directory
Live data from your Pearlscriptions indexer (GET /tokens, read-only). Set the indexer URL in Settings.
Why two transactions?
A PRL-20 operation lives inside a Taproot inscription envelope — a script that
reveals the JSON on-chain. If that script's hash were visible beforehand, anyone could
front-run your deploy or mint. The commit → reveal pattern fixes this:
Commit. You send PRL to a Taproot address derived from your key tweaked
with the inscription script. The tweak commits to the script without revealing it —
observers see an ordinary Taproot payment.
Reveal. You spend that output with a script-path witness containing the
envelope and a control block proving it was committed to. The JSON becomes public
only now, and the inscription is assigned to the first output of the reveal.
Fees
You pay for both transactions: the commit (a small keypath spend) and the reveal (larger —
it carries the whole inscription in its witness). The launcher estimates both from the
actual serialized sizes and shows a full cost breakdown before you sign anything.
PRLS mints additionally pay a 1 PRL launch fee to the operator's fee recipient.
Mainnet launches built here also pay a disclosed flat 0.05 PRL launcher fee to the
builder (its own output in the reveal, shown in the cost breakdown before signing); testnet launches pay none.
Safety notes
Keys never leave your browser and are never stored. Reload the page and the wallet is gone.
Broadcasting is a separate, explicit click per transaction — building signs locally but sends nothing.
The reveal must wait for the commit to confirm (or be in the mempool with the 0-conf override).
Always verify the JSON in the preview — what you inscribe is final.