Documentation
Everything you need to know about launching tokens, reading Risk Cards, and using the Trading Floor on OpStreet โ powered by OP_NET testnet.
What is OpStreet?
OpStreet is a token launchpad for OP_NET testnet โ the Bitcoin L2 that runs EVM-compatible smart contracts (called OP_20 contracts) directly on Bitcoin via Ordinals.
Like Pump.fun on Solana, OpStreet lets anyone launch a token in minutes. Unlike Pump.fun, every token gets an automated security audit (Risk Card) powered by the Bob AI assistant before it can graduate.
Key Features
- โOne-click token launch (OP_20 contract, fixed supply)
- โAutomated Risk Card (Bob AI security audit)
- โLive pool trading โ wallet-signed swaps on OP_NET testnet
- โWatchtower monitoring after contract deployment
- โTrading Floor โ live community chat, callouts, charts
- โAchievement badges and leaderboard gamification
- โOP721 shop collection โ wallet-bound NFT items
- โMainnet support (pending OP_NET mainnet launch)
Quick Start
5 steps to launch a token
- 1
Connect your wallet
Click "Connect Wallet" in the header. Supports Unisat, OKX, and OPNet Plugin. For quick testing, enter a testnet address manually.
- 2
Create a token
Click "+ Create Coin", fill in name / ticker / supply / description. Takes ~10 seconds.
- 3
Run Security Checks
On the token page, click "Run Security Checks โ". Bob AI will scaffold and audit your OP_20 contract. Takes 15โ60s.
- 4
Read the Risk Card
Once checks complete, review your Risk Card score (0 = safe, 100 = critical). All OpStreet tokens default to LOW RISK because the template has no mint / no admin / no pause.
- 5
Deploy & trade
Deploy your token to OP_NET testnet, create a liquidity pool, and start trading with live pool quotes.
Create a Token
Token parameters
When you create a token, you provide:
- Name โ full display name (e.g. "Orange Protocol")
- Ticker โ 2โ10 uppercase characters (e.g. "ORP")
- Max Supply โ fixed forever, cannot be changed after launch
- Decimals โ typically 18 (like ERC-20)
- Description โ 10โ2000 chars, shown on the token page
- Links โ optional website, Twitter, GitHub
Safe defaults (always enforced)
- โNo mint() function โ supply is fixed at deployment
- โNo owner/admin key โ no privileged addresses
- โNo pause() โ transfers are always enabled
- โNo upgrade mechanism โ contract is immutable
- โ100% supply minted to deployer at deployment
Under the hood
When you submit the form, OpStreet creates a project record in the database. The actual OP_20 contract (AssemblyScript) is generated when you run security checks. The generated contract uses the btc-runtime OP_20 base class from OP_NET.
Risk Card
The Risk Card is OpStreet's transparency report for each token. It shows the exact risk properties of the contract so buyers can make informed decisions.
Risk Score (0โ100)
Risk factors
Security Checks
Clicking "Run Security Checks" triggers a two-phase pipeline powered by Bob AI (OP_NET's AI assistant):
Phase 1 โ Scaffold (SCAFFOLD check run)
Bob generates your OP_20 contract in AssemblyScript using the fixed-supply template. The generated source code is hashed and stored as the buildHash. This ensures the contract is deterministic โ the same inputs always produce the same hash.
Phase 2 โ Audit (AUDIT check run)
Bob audits the generated contract for security issues. The audit checks for: mint functions, admin keys, pause mechanisms, upgrade patterns, reentrancy, and more. Results are stored as the riskCard JSON and a numeric riskScore.
Status transitions
Launch Pipeline
OpStreet no longer uses a pre-launch interest gate. A token becomes tradable only after the wallet-signed deploy and pool creation steps are confirmed on OP_NET testnet.
Live launch sequence
- Run checks until the project reaches
READY - Start
launch-buildto prepare the deploy artifact - Submit the deploy transaction from your wallet and wait for watcher confirmation
- Create the pool from your wallet and wait for on-chain confirmation
- Trading unlocks only after the project reaches
LIVE
Live trading
Once a token is live, pricing uses constant-product AMM quotes from indexed pool reserves. Candles, volume, and player stats all derive from confirmed trade fills.
Trading Floor
The Trading Floor is OpStreet's live community hub. Think of it like a Bloomberg terminal crossed with a Discord server, but for OP_NET tokens.
Features
- โLive presence โ see who's on the floor right now
- โAvatars โ pick an emoji avatar when you join
- โCallouts โ post 280-char alpha signals with up/down reactions
- โTrollbox โ real-time chat (3s cooldown, spam detection)
- โTicker tape โ top live projects ranked by indexed market activity
- โChart panel โ live OHLC candles from confirmed trade fills
- โLive trading โ wallet-signed swaps against pool reserves
Joining the floor
Connect your wallet, then visit the Floor. A modal will appear asking for your display name and avatar. Your presence is tracked for 5 minutes after your last heartbeat โ if you close the tab, you leave automatically.
Callout rules
- Maximum 280 characters per callout
- 2-hour cooldown between callouts (prevents spam)
- Up to 50 reactions per callout (UP or DOWN)
- Posting 10+ callouts unlocks the "Caller" avatar
- Posting 50+ callouts unlocks the "OG" avatar
Wallet & Authentication
Supported wallets
Unisat
Supported
Best support, BIP-322 signing
OKX Wallet
Supported
Bitcoin tab, BIP-322 signing
OPNet Plugin
Supported
Native OP_NET wallet
Manual address (testnet)
If you don't have a wallet extension, you can paste a testnet Bitcoin address directly. Manual mode lets you browse launch pages, but you cannot sign transactions or verify identity (no BIP-322 signing without a wallet).
Verification (BIP-322)
After connecting, click "Sign to verify" in the wallet dropdown. Your wallet signs a message with your private key (no funds moved). The backend verifies the signature and issues a session JWT cookie. Verification is required for:
- Entering the Trading Floor
- Posting callouts and chat messages
- Running security checks (quota: 5/day per wallet)
Disconnecting
Click the wallet address button in the header โ select "Disconnect". This clears your local session and logs you out of the API. Your token and floor data are preserved in the database.
Testnet Buy Flow
Trading uses wallet-signed transactions against live liquidity pools:
How it works
- 1
Get testnet BTC
Visit faucet.opnet.org to get 0.05 tBTC every 24 hours on OP_NET testnet.
- 2
Enter amount
On the token page, enter how many sats you want to spend in the Buy panel.
- 3
Get a live quote
OpStreet API returns a constant-product AMM quote from the live pool reserves, including price impact and fees.
- 4
Sign with wallet
Your wallet extension (Unisat/OKX/OPNet) signs the swap transaction. No private key ever leaves your device.
- 5
Broadcast
The signed transaction is broadcast to the OP_NET network and executed against the pool contract.
- 6
Confirmation
The watcher confirms the trade on-chain. Your fill, candle data, and stats update automatically.
FAQ
Is this testnet or mainnet?
OpStreet currently runs on OP_NET testnet. All trading uses live pool reserves and confirmed on-chain data. Mainnet support with real BTC is planned for Phase 5.
What is OP_NET?
OP_NET is a Bitcoin Layer 2 that enables EVM-compatible smart contracts via Ordinals. Contracts are written in AssemblyScript and compiled to WebAssembly (WASM). OP_20 is the OP_NET equivalent of ERC-20.
Why does my floor join fail?
Connect your wallet via the header button first. You need a wallet address set to enter the floor. If you're using a wallet extension, try signing to verify your identity first.
Why do security checks take so long?
Security checks call Bob AI (OP_NET's AI assistant) twice โ once to scaffold the contract and once to audit it. Each call can take 10โ30 seconds. The page polls automatically.
What is the 'buildHash'?
The buildHash is a SHA-256 hash of the generated AssemblyScript source code. It serves as a tamper-evident record. If the deployed contract matches this hash, it's marked as 'Artifact Verified'.
When will mainnet be available?
Mainnet support is planned for Phase 5. Graduated tokens with proven testnet activity will be considered for mainnet migration.
How do I get a testnet wallet?
Install Unisat Wallet or OKX Wallet browser extension. Switch to Bitcoin Testnet or OP_NET Testnet in the wallet settings. Then get testnet BTC from faucet.opnet.org.
Roadmap
Core Launchpad
- โToken creation form
- โOP_20 contract scaffolding
- โBob AI security audit
- โRisk Card generation
- โWallet-native launch states
Community & Discovery
- โTrading Floor (live presence + chat + callouts)
- โTrending page
- โAchievement badges
- โNeo-brutalism UI reskin
Polish & Deploy
- โWatchtower monitoring
- โBIP-322 wallet authentication
- โMobile-responsive design
- โDark/light theme toggle
Live Testnet Trading
- โWallet-native deploy + pool creation
- โLive pool trading (wallet-signed swaps)
- โMarket indexer (candles, fills, volume)
- โOP721 shop collection
Mainnet & AMM
- โOP_NET mainnet support
- โAMM graduation (PumpSwap equivalent)
- โCross-chain bridge support
- โToken staking rewards
