Existing Documentation
BRC-20 and BRC2.0 technical documentation catalog
Written By zbam
Last updated 25 days ago
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
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
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
URL: https://layer1.gitbook.io/layer1-foundation/protocols/brc-20/proposals
Type: Protocol improvement proposals
Source: Official/Primary
Description: Documents approved and pending proposals including Modular Complexity, Ord Version Freeze, Core Function Cleanup, and BRC20 IP1 (Issuance and Burn Enhancements).
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. Includes BRC20_Controller contract at address 0xc54dd4581af2dbf18e4d90840226756e9d2b3cdb.
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 (evm_addr = keccak256(bitcoin_pkscript_bytes).slice(-40)), smart contract deployment via inscriptions, and custom Bitcoin precompiles at addresses 0x...ff through 0x...fb.
BRC2.0 proposals repository
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
Bitcoin precompile specifications
0x...fa | Current Tx ID |
BRC2.0 explorer
Explorer URL: (Mainnet) https://explorer.brc20.build/ | (Signet) https://explorer.bestinslot.xyz/signet
Type: Development tools
Source: Official
Description: BRC2.0 chain with contract and transaction explorer. Activation height 230,000 on Signet, 923690 on Mainnet.
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
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
Type: Reference implementation
Source: Official/Primary
Stars: 3,900+ | License: CC0-1.0 | Language: Rust (96.7%)
Description: Index, block explorer, and command-line wallet. Current release v0.24.2 (November 2025). Requires synced bitcoind with -txindex flag.
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
Type: Original technical introduction (July 21, 2022)
Type: Technical history (September 5, 2024)
Source: Official/Primary
Description: First public introduction of ordinal theory and development timeline, including inspiration from Satoshi's "atoms" concept.
GitHub repositories and implementations
Best in Slot Open Protocol Indexer (OPI)
Type: Reference indexer implementation
Source: Official/Primary (Lead Maintainer)
Stars: 220+ | License: Apache-2.0 | Latest: v2.0.3
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
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
Indexer API documentation
Four major indexers provide developer APIs for BRC-20 data access.
Best in Slot API
Base URL: https://api.bestinslot.xyz/v3/
Type: REST API documentation
Source: Official
Authentication: API key via x-api-key header
Rate limits: Free tier (10 calls/min, 1000/day), Grow ($99/mo), Scale ($699/mo)
Key endpoints: /v3/brc20/wallet_balances, /v3/brc20/tickers, /v3/brc20/ticker_info, /v3/brc20/holders, enterprise historical data endpoints
UniSat API
URL: https://docs.unisat.io/dev/open-api-documentation/api-for-bitcoin
Base URL: https://open-api.unisat.io
Type: REST API documentation
Source: Official
Authentication: JWT Bearer token
Key endpoints: /v1/indexer/brc20/list, /v1/indexer/brc20/{ticker}/info, /v1/indexer/brc20/{ticker}/holders, /v2/inscribe/order/create/brc20-*
OKX API
URL: https://www.okx.com/web3/build/docs/waas/marketplace-ordinals-api
Type: REST API documentation
Source: Official
Authentication: OK-ACCESS-KEY + signature + timestamp + passphrase
Key endpoints: /api/v5/explorer/brc20/token-list, /api/v5/explorer/brc20/token-details, /api/v5/mktplace/nft/ordinals/*
Hiro Ordinals API
Base URL: https://api.hiro.so/ordinals/v1/
Type: REST API documentation
Source: Official
Rate limits: Free 500 RPM, higher limits via API key
Description: Complete BRC-20 token data with caching optimization, powered by reorg-aware Bitcoin Indexer.
Wallet SDK and integration documentation
Sats Connect (Xverse)
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
npm: @unisat/wallet-utils
Type: Official SDK
Description: Browser extension API via window.unisat object. Methods include requestAccounts(), signMessage(), signPsbt(), sendInscription().
Leather/Hiro Connect
npm: @stacks/connect
Type: Official SDK
Description: RPC-based interface using request() method. Supports BTC, STX, Ordinals, and BRC-20 via Leather wallet.
Core Bitcoin libraries
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)
Technical comparisons to other Bitcoin token standards
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
URL: https://www.certik.com/resources/blog/ordinals-and-the-brc-20-standard-overview-and-risk-analysis
Type: Security audit/analysis
Source: Community (reputable blockchain security firm)
Key findings: BRC-20 tokens don't inherit Bitcoin's full security model—indexer operators can theoretically manipulate balances; indexer logic flaws could enable double-spending; low barriers enable fraudulent projects.
Cyberscope audit services
Type: Commercial audit service
Focus areas: Indexer logic verification, off-chain database security, balance record integrity, JSON parsing vulnerabilities.