pairbase
[ DOCUMENTATION ]LIVE ON Robinhood Chain

Everything a pair needs to know.

Pairbase turns an idea into a tradeable asset on Robinhood Chain in one transaction: a fixed-supply token, an ETH pool, optional ETH backing with a redemption floor, and compatibility with every tool that speaks Uniswap V2.

What Pairbase is.

Pairbase is a launchpad and a liquidity marketplace on Robinhood Chain, an Ethereum layer 2. It solves one problem: a brand-new asset has no market. With Pairbase, creating the asset and opening its market are the same step.

  • Launch. Deploy a fixed-supply ERC-20 and seed a token / ETH pool in one transaction. The remaining supply goes to your wallet.
  • Back. Optionally lock ETH in the Pairbase vault. Every holder can redeem tokens for their share at any time, and nobody can withdraw it.
  • Trade and fund. Anyone can swap through the pool or add liquidity and earn its 0.30% fee.
  • Plug in. Pools use the Uniswap V2 interface, so routers, aggregators, bots and screeners can trade them without custom code.
Pairbase is non-custodial. The website is an interface to open smart contracts. Every action is a transaction you sign in your own wallet, and the contracts have no admin control over tokens, pools, or collateral.

Getting started.

  1. Install a wallet. MetaMask, Rabby, or any browser wallet that supports custom EVM networks.
  2. Open the app and connect. Pairbase asks your wallet to add Robinhood Chain if it is missing. Network details are on the contracts page.
  3. Get ETH on Robinhood Chain. ETH is the gas token and the pairing asset. Bridge from Ethereum with the official Robinhood Chain bridge, or use the testnet faucet if you are on the testnet.
  4. Pick a network. The footer of the app lets you switch between mainnet, testnet, and a local chain. The testnet is a good place to try a launch with test ETH first.

Launching an asset.

Choose Create an asset anywhere in the app. The flow has three steps.

1. The asset

FieldWhat it does
Name and tickerStored on the token contract. Ticker: 1 to 16 capital letters or digits. Name: up to 64 bytes.
Total supplyMinted once, in full, at launch. There is no way to mint more later.
Description and linkOptional. Stored with the token as a small JSON document so any interface can show it. The creator can update it later; nothing else about the token can change.

2. The pair

FieldWhat it does
Tokens to put in the poolThe part of the supply that opens the market. The rest goes to your wallet.
ETH to seedThe other side of the pool. Tokens ÷ ETH sets the opening price.
Backed assetLock extra ETH in the vault as a redemption floor. See Backed assets.
Lock your launch liquidityHolds your LP tokens in the launchpad contract for 30 days, 90 days, or a year. Traders can see the lock on the pool. You claim the LP tokens from Your liquidity once the lock ends.

3. The launch

Review the numbers, confirm in your wallet, and one transaction does all of it: deploys the token, creates the pool, seeds both sides, locks backing if chosen, and sends the remaining supply to you. When it confirms, the pool appears on the pairing floor and is tradeable by anyone.

The opening price is yours to choose, not a valuation. A pool seeded with very little ETH is thin: small trades move the price a lot, and the app shows that price impact before every swap. Seed enough ETH for the market you want.

Backed assets.

A plain launched token has a market price and nothing else. A backed asset also has a floor: ETH locked in the Pairbase vault that every holder can claim.

  • Floor price = ETH in the vault ÷ token supply. It is shown on the pool next to the market price.
  • Redeem any time. Any holder can burn tokens and receive that share of the ETH. Because the tokens are burned, the floor is unchanged for everyone else.
  • Nobody can withdraw. The vault has no withdraw function. The creator's only exit is redeeming, the same as any holder. Anyone can add more ETH, which only raises the floor.
  • Self-correcting. If the pool ever trades below the floor, buying from the pool and redeeming is profitable, which pushes the pool price back up to the floor.
"Backed" here means exactly one thing: ETH you can verify on the explorer and redeem with a transaction. No custodian, no attestation, no oracle.

What it is not: a peg to an external price. A backed token is redeemable for ETH, not for a stock, a commodity, or a dollar. Tracking an outside price would need an oracle or a custodian, and Pairbase does not promise either.

Trading.

Open any pool and use Buy or Sell. Pairbase quotes across every pool and takes the best route. Because every asset is paired with ETH, a trade between two assets is two hops through ETH in one transaction.

  • Slippage limit. The minimum you accept, 0.1% to 1%. If the price moves past it before your transaction confirms, the trade reverts and you keep your funds minus gas.
  • Price impact. How much your own trade moves the price. Large relative to the pool means a worse rate. The app flags anything above 5%.
  • Deadline. Every trade carries a 20-minute deadline. Robinhood Chain confirms in well under a second, so this is a safety net, not a wait.
  • Approvals. Selling a token requires a one-time approval so the router can move it. ETH needs no approval.

Providing liquidity.

Choose Add on a pool. You deposit both assets in the pool's current ratio and receive LP tokens that represent your share. Every swap through the pool pays 0.30% to liquidity providers, and it accrues inside the pool, so your share is worth more when you withdraw.

  • Withdraw any time from Your liquidity, in whole or in part. You receive both assets at the current ratio.
  • Impermanent loss. Your position tracks the pool, not your original deposit. If the price of the token moves a lot in either direction, withdrawing can be worth less than holding both assets would have been. Fees offset this only if there is enough trading.
  • Open a pool for an existing token. Paste any ERC-20 address on the chain, seed it with ETH, and it gets a market. If a pool already exists, your deposit joins it.

Fees and costs.

ItemAmountWho receives it
Swap fee0.30% of every tradeLiquidity providers of that pool
Protocol feeOff by default. If enabled on the factory, one sixth of the swap fee growthProtocol fee address, visible on chain
Launch feeShown on the contracts page and before you confirm. Capped at 0.05 ETH by the contractLaunchpad owner
GasA launch is roughly 3 to 4 million gas; a swap far less. Robinhood Chain gas is a fraction of a gweiThe network

Synthetics: track the real thing.

Backed assets are redeemable for ETH. Synthetics go further: they track an external price. Lock ETH in the synth engine, mint sTSLA, sSPY, sBTC or another market, and the token's value follows the Chainlink feed for that asset. Robinhood Chain uses Chainlink as its official oracle, with live feeds for ETH, major crypto, and Robinhood's tokenized equities and ETFs.

How a position works

  1. Deposit ETH into a market. It becomes your collateral, valued by the Chainlink ETH/USD feed.
  2. Mint synth up to the mint ratio (150% by default): $1,500 of ETH lets you mint $1,000 of synth. The synth is an ordinary ERC-20; trade it, hold it, or open a Pairbase pool for it.
  3. Stay above the liquidation ratio (125%). If ETH falls or the tracked asset rises, your ratio drops. Add ETH or repay synth to raise it.
  4. Repay and withdraw any time. Burn synth to reduce debt, then withdraw collateral. Repaying never depends on a price feed, so it works even when feeds are stale.

Liquidation

Below the liquidation ratio, anyone can repay part or all of your debt and take ETH worth the repayment plus an 8% bonus. Partial liquidations are allowed, and a position that recovers above the ratio cannot be liquidated further. Liquidators are usually bots; the SDK ships one.

What keeps it honest

  • Prices are read straight from Chainlink with a positive-answer check and a staleness bound (25 hours, just above the feeds' 24-hour heartbeat). A stale feed pauses minting, withdrawals against debt, and liquidations; repaying and depositing always work.
  • Sequencer awareness. If a Chainlink L2 sequencer uptime feed is configured, price actions pause during an outage and for an hour after.
  • Bad debt is visible. If a crash leaves a position with more debt than collateral, the shortfall is recorded per market, minting pauses there, and anyone can burn synth against it. Nothing is hidden and nothing is socialised silently.
  • Debt ceilings cap each market. Pause is an owner tool for oracle incidents or corporate actions; it never blocks repaying or depositing.
  • Owner limits. The owner can create markets, tune ratios and ceilings, set a mint fee up to 1% (taken in ETH so synth stays fully backed), and pause. It cannot touch positions or collateral.
ParameterDefaultMeaning
Mint ratio150%Minimum collateral value ÷ debt value to mint or withdraw
Liquidation ratio125%Below this, anyone can liquidate
Liquidation bonus8%Extra collateral paid to the liquidator
Staleness bound25 hMax feed age before price actions pause
Mint fee0%Owner-settable, capped at 1%, taken in ETH

Synth risks.

  • Liquidation is real and fast. Robinhood Chain blocks are sub-second. A 20% move against you from a 150% position puts you at the edge. Keep a buffer; 200% or more is common practice.
  • Two prices move your ratio. ETH falling and the tracked asset rising both hurt a minter. Shorting a stock's synth by minting and selling is a leveraged bet on both.
  • Feeds can lag. Equity feeds update on a 0.5% deviation or every 24 hours, so the on-chain price can sit behind the market for hours, especially around opens and closes. The engine trusts the feed; it cannot know better than it.
  • Bad debt can happen. A gap move larger than the 25% buffer plus bonus can leave unbacked synth. It is recorded and minting freezes until covered, but holders of that synth carry the risk that it trades below the feed price until then.
  • A synth is a claim on the engine, not on the asset. sTSLA does not own Tesla stock, pay dividends, or carry voting rights. It tracks a number.
  • Regulatory. Synthetic exposure to equities is securities-adjacent almost everywhere. Know your jurisdiction. This interface does not restrict access; the contracts are permissionless.
  • Unaudited. Same status as the rest of Pairbase: tested, not independently audited.

SDK and keepers.

Everything the website does is available as a JavaScript package, the same code the site runs, with ethers v6 as a peer dependency.

npm install pairbase-sdk ethers

import { loadNetworks, PairbaseClient, SynthClient, ethers } from 'pairbase-sdk';
const net = (await loadNetworks()).find(n => n.chainId === 4663);
const synth = new SynthClient(net);
const markets = await synth.loadMarkets();          // prices, ratios, ceilings, staleness
const positions = await synth.loadPositions(addr);  // ratio, liquidatable, maxMintable
  • PairbaseClient: pools, best-route quotes and swaps, liquidity, launches, backed-asset redemption.
  • SynthClient: markets, positions, deposit/mint/burn/withdraw, liquidation previews and calls, keeper helpers (knownUsers, scanLiquidatable).
  • Pure math (getAmountOut, bestRoute, SynthClient.capacity, SynthClient.ratioAfter) that mirrors the contracts, bigint in and out.
  • ABIs for every contract, addresses per chain, and describeError() for readable reverts.

Running a liquidation keeper

The SDK ships examples/liquidator.mjs: it scans every market for positions under the liquidation ratio and liquidates them with the synth the keeper holds, earning the 8% bonus. Run it with a funded key and some synth inventory:

PRIVATE_KEY=0x... CHAIN=4663 node sdk/examples/liquidator.mjs

Keepers are what make the system safe; anyone can run one, and several running at once is the healthy state.

For integrators.

Treat Pairbase as a Uniswap V2 fork. Everything below is standard V2 behaviour unless noted.

Factory

  • getPair(tokenA, tokenB), allPairs(i), allPairsLength(), feeTo(), feeToSetter().
  • PairCreated(address indexed token0, address indexed token1, address pair, uint), the V2 signature.
  • INIT_CODE_PAIR_HASH() for CREATE2 lookups: keccak256(0xff ++ factory ++ keccak256(token0 ++ token1) ++ initCodeHash). The live value is on the contracts page.

Pair

  • getReserves(), token0(), token1(), price0CumulativeLast(), kLast(), LP token with EIP-2612 permit.
  • swap(amount0Out, amount1Out, to, data) with the uniswapV2Call flash-swap callback when data is non-empty.
  • Fee 0.30% on every pool, so standard 997 / 1000 math is exact.
  • Events Swap, Sync, Mint, Burn with V2 signatures.

Router

Router02 function signatures: addLiquidity, addLiquidityETH, removeLiquidity, removeLiquidityETH, swapExactTokensForTokens, swapTokensForExactTokens, swapExactETHForTokens, swapExactTokensForETH, swapETHForExactTokens, swapTokensForExactETH, getAmountsOut, getAmountsIn. Fee-on-transfer variants are not implemented.

Launchpad and vault

  • AssetLaunched(token, pair, creator, totalSupply, poolAmount, ethAmount, liquidity, unlockAt, index) on every launch; AssetBacked(token, vault, collateralAmount) when backed.
  • allAssets(i), getAsset(token) return the pair, creator, LP lock, and whether the asset is backed.
  • Vault: floorPrice(token), redeemValue(token, amount), redeem(token, amount, minOut), deposit(token, amount), and Redeemed / Deposited events.
  • Lens: getPairs, getAssets, getPositions, getBalances return everything the interface needs in a few calls. Read-only, safe to use from any indexer.
Differences from Uniswap V2 core: Solidity 0.8 with custom errors instead of revert strings, and the permanently locked minimum liquidity is minted to 0xdead instead of the zero address.

Security and trust.

  • Launched tokens have no admin. No owner, no mint, no pause, no blacklist, no transfer tax. The creator can only update the metadata pointer.
  • Pools and router follow the Uniswap V2 design, which has secured billions of dollars for years. Pairbase's implementation has a test suite including fuzzing on the constant-product invariant, flash-swap and reentrancy cases.
  • Vault collateral can leave only through redemption, which burns tokens. There is no owner path to it.
  • Owner powers are narrow. The factory owner can set the protocol fee recipient. The launchpad owner can set the launch fee (capped) and withdraw collected fees. Ownership transfers are two-step. Nothing an owner does can touch a pool, a token, or the vault.
  • Audit status. The contracts have not yet had an independent third-party audit. Treat that as part of the risk when deciding how much to put in. See the risk disclosure.
  • Sources are verified on the block explorer for every deployed contract, so anything on this page can be checked against the code.

FAQ.

Can I launch a token that tracks a stock, gold, or a commodity?

You can launch a token with that name and narrative, and it will trade. It will not track the external price. Backing makes a token redeemable for ETH, nothing else. Tracking an outside price needs an oracle or a custodian, which Pairbase does not provide.

Why is every pool paired with ETH?

ETH is the hub. Every asset is one hop from ETH, so any asset can reach any other in two hops, and routers and trading tools that already handle ETH pairs work immediately.

Can the creator rug the pool?

A creator who holds their LP tokens can withdraw the liquidity they added, like any provider. That is why the LP lock exists and is shown on the pool. Backing is different: vault ETH cannot be withdrawn by anyone.

What happens to the token supply when people redeem?

Redeemed tokens are burned, so total supply falls and every remaining token keeps the same floor.

Is there a token or points program for Pairbase itself?

No.

Where is the code?

Contract sources are verified on the explorer, linked from the contracts page. The interface is plain HTML and JavaScript with no build step.