Documentation Index
Fetch the complete documentation index at: https://docs.brc20.build/llms.txt
Use this file to discover all available pages before exploring further.
Primary protocol specifications
The foundational BRC-20 documentation exists across two authoritative sources:
Domo’s original specification and the Layer1 Foundation’s updated protocol
documentation.
Original BRC-20 whitepaper
- URL: https://domo-2.gitbook.io/brc-20-experiment
- Type: Original protocol specification
- Source: Official/Primary (authored by @domodata,
BRC-20 creator)
- Description: The “definitive brc-20 white paper” containing the three core
operations (deploy, mint, transfer), JSON inscription format specifications,
balance state rules, and technical constraints including uint128 standard with
max 18 decimals. Explicitly designated as unalterable.
Layer1 Foundation protocol documentation
- URL:
https://layer1.gitbook.io/layer1-foundation/protocols/brc-20/documentation
- Type: Updated protocol documentation
- Source: Official/Primary (Layer1 Foundation)
- Description: Current official documentation incorporating all protocol
updates: block 816,000 ord version freeze (v0.90), Jubilee upgrade (ord 0.14),
and block 837,090 additions including self-mint functionality, 5-byte tickers,
and burn mechanism via OP_RETURN.
Layer1 Foundation governance portal
- URL: https://layer1.foundation/brc20
- Type: Governance and organization portal
- Source: Official/Primary
- Description: Official non-profit organization page listing governance
structure (President: Domo; Vice President: Isabel Foxen Duke), lead
maintainers (Best in Slot, UniSat), and partner organizations. Links to
official forum at https://l1f.discourse.group/.
Protocol improvement proposals
BRC2.0 technical documentation
BRC2.0 introduces EVM smart contract execution to Bitcoin’s Layer 1 without
bridges or Layer 2 solutions. Gas costs are handled at the indexer level—users
pay only Bitcoin transaction fees.
BRC2.0 programmable module repository
- URL: https://github.com/bestinslot-xyz/brc20-programmable-module
- Type: Core implementation repository
- Source: Official/Primary (Best in Slot)
- Description: Rust implementation using revm (Rust EVM) execution engine.
Provides JSON-RPC 2.0 server supporting standard eth_* methods plus custom
brc20_* methods.
Layer1 Foundation BRC2.0 proposal
- URL:
https://l1f.discourse.group/t/brc2-0-programmable-module-proposal/766
- Type: Protocol specification/technical whitepaper
- Source: Official/Primary (published March 31, 2025)
- Description: Complete architectural specification detailing EVM execution
engine, address translation formula, smart contract deployment via
inscriptions, and custom Bitcoin precompiles at addresses 0x…ff through
0x…fb.
BRC2.0 proposals repository
- URL: https://github.com/bestinslot-xyz/brc20-proposals
- Type: Protocol improvement proposals
- Source: Official/Primary
- Description: Formal BRC improvement proposals including:
- 000: Programmable Module specification
- 001: 6-byte ticker namespace
- 002: BRC20 precompile removal
- 003: EVM upgrade to Prague
- 004: Bitcoin transaction ID precompile
BRC2.0 explorer
Ordinals protocol documentation
BRC-20 operates as a layer built on Ordinals. Understanding the underlying
ordinal theory is essential for protocol development.
Ordinal Theory Handbook
- URL: https://docs.ordinals.com/
- Type: Official protocol documentation
- Source: Official/Primary (Casey Rodarmor, Raph Japh)
- Description: Definitive guide covering ordinal numbering scheme, five
notation systems (Integer, Decimal, Degree, Percentile, Name), rarity
classification, inscriptions documentation, and Runes specification. Available
in 14 languages.
ord GitHub repository
- URL: https://github.com/ordinals/ord
- Type: Reference implementation
- Source: Official/Primary
- Stars: 3,900+
- Description: Index, block explorer, and command-line wallet. Current
release v0.24.2 (November 2025).
Ordinals BIP (draft)
- URL: https://github.com/ordinals/ord/blob/master/bip.mediawiki
- Type: Technical specification
- Source: Official/Primary (Casey Rodarmor)
- Description: 15-line algorithm specification for ordinal assignment,
Python pseudocode for subsidy calculation, satpoint notation, and
compatibility analysis for covenants and Lightning Network.
Casey Rodarmor’s technical writings
GitHub repositories and implementations
Best in Slot Open Protocol Indexer (OPI)
- URL: https://github.com/bestinslot-xyz/OPI
- Type: Reference indexer implementation
- Source: Official/Primary (Lead Maintainer)
- Stars: 220+
- Description: Open-source indexing client using fork of ord 0.23.2. Modules
for BRC-20, Bitmap, SNS, and Runes. PostgreSQL backend with reorg protection
and block hash verification.
BRC-20 indexer rules documentation
- URL: https://docs.bestinslot.xyz/brc-20-indexer-rules
- Type: Implementation specification
- Source: Official/Primary
- Description: Critical indexer rules: MIME type must be “text/plain” or
“application/json”; ALL JSON fields must be strings (not numbers); use byte
count for UTF-8 emoji tickers; reorg handling requirements.
Additional repositories
| | |
|---|
| Repository | URL | Type |
| BRC-20 Devs Org | https://github.com/brc20-devs | Development organization |
| UniSat BRC-20 Indexer | https://github.com/unisat-wallet/libbrc20-indexer | Go indexer library |
| OKX BRC20 Indexer | https://github.com/okx/ord | Protocol implementation |
| Next-DAO Indexer | https://github.com/Next-DAO/brc20_indexer | Node.js indexer |
Indexer API documentation
Four major indexers provide developer APIs for BRC-20 data access.
Best in Slot API
UniSat API
OKX API
Hiro Ordinals API
Wallet SDK and integration documentation
Sats Connect (Xverse)
- URL: https://docs.xverse.app/sats-connect
- npm: sats-connect (~2M downloads)
- Type: Official SDK
- Languages: JavaScript/TypeScript
- Description: Primary library for Bitcoin wallet connections. Supports
wallet_connect, signPsbt, ord_getInscriptions, createInscription. Compatible
with Xverse, Leather, and other Bitcoin wallets.
UniSat wallet integration
Leather/Hiro Connect
Core Bitcoin libraries
| | |
|---|
| Library | URL | Purpose |
| bitcoinjs-lib | https://github.com/bitcoinjs/bitcoinjs-lib | Core Bitcoin transactions, PSBT (BIP-174), Taproot |
| micro-ordinals | https://github.com/paulmillr/micro-ordinals | Minimal inscriptions library |
| @scure/btc-signer | https://www.npmjs.com/package/@scure/btc-signer | Audited PSBT/Taproot signing |
| msigner | https://github.com/me-foundation/msigner | PSBT signer for Ordinals marketplaces |
Relevant Bitcoin Improvement Proposals
BRC-20 and Ordinals depend on Taproot (activated block 709,632, November 2021)
and PSBT for marketplace transactions.
Taproot BIPs (foundation for inscriptions)
PSBT BIPs (marketplace transactions)
| | | |
|---|
| BIP | Title | URL | Relevance |
| BIP-174 | PSBT Format | https://github.com/bitcoin/bips/blob/master/bip-0174.mediawiki | Core format for BRC-20 atomic swaps |
| BIP-370 | PSBT Version 2 | https://github.com/bitcoin/bips/blob/master/bip-0370.mediawiki | Enhanced transaction construction |
| BIP-371 | Taproot PSBT Fields | https://github.com/bitcoin/bips/blob/master/bip-0371.mediawiki | Required for inscription transactions |
Technical comparisons to other Bitcoin token standards
| | | | |
|---|
| Protocol | Data Storage | State Validation | Lightning | Smart Contracts |
| BRC-20 | Witness (4MB) | Off-chain indexers | Limited | None |
| BRC2.0 | Witness + OP_RETURN | Off-chain indexers + EVM | Limited | Yes (full EVM) |
| Runes | OP_RETURN (<80 bytes) | UTXO-native | Native | None |
| RGB | Commitments only | Client-side | Native | Yes (AluVM) |
| Taproot Assets | Merkle roots | Universe servers | Native | Limited |
Key architectural difference: BRC-20 stores all data on-chain but token
balances depend entirely on correct indexer interpretation, introducing
centralization risks absent in UTXO-native protocols like Runes. Casey Rodarmor
designed Runes specifically to reduce UTXO proliferation caused by BRC-20.
Security analysis resources
CertiK risk analysis
Cyberscope audit services