Overview
What a virus is, how one trade burns its host, and where Pons ends and VIRUS begins.
§A coin priced in another coin
A virus is a token with no ETH price of its own. It is launched on the Pons V2 launchpad on Robinhood Chain, but its bonding curve, and later its Uniswap V4 pool, trade against another Pons V2 launch token instead of ETH. That other token is the host.
Every trade of a virus pays a fee in the host. The share of that fee VIRUS controls is credited to a contract that exists for that one virus, its VirusFeeder. When anyone calls feed(), the feeder permanently burns 50% of what it received from the host's supply, books 30% to the virus's developer and pays 20% to the VIRUS treasury.
VIRUS is an EVM adaptation of Parasite, a Solana project built on Meteora ("Launch a coin that trades in another coin, and every trade burns the host."). What VIRUS kept, changed and could not reproduce is set out in Parasite → VIRUS differences.
§The mechanism in one sentence
A virus is a Pons V2 launch whose pair token is another Pons V2 launch token (the host); its trading fees accrue in the host, and its own VirusFeeder burns 50% of them, books 30% to the developer and pays 20% to the VIRUS treasury each time anyone calls
feed().
§Example: $DOG → $FLU
The tickers in this example are illustrative. They do not refer to any specific token.
- $DOG is a Pons V2 launch token that trades against ETH. It is the host.
- $FLU is launched through VIRUS with $DOG as its Pons pair token. $FLU is the virus.
- $FLU has no ETH market. To buy it you first acquire $DOG, then spend $DOG on the $FLU curve.
- The fee on that $FLU trade is taken in $DOG. Pons keeps its protocol share. The rest, plus a creator tax VIRUS sets at launch, is credited in $DOG to $FLU's feeder through the Pons fee escrow.
- When anyone calls
feed()on $FLU's feeder, it claims those $DOG tokens and splits them:- 50% burned. The feeder calls
$DOG.burn(amount)and reverts unless$DOG.totalSupply()fell by exactly that amount. - 30% booked to the developer of $FLU, paid in $DOG through
claimDev(). - 20% to the VIRUS treasury, in $DOG.
- 50% burned. The feeder calls
The route to $FLU is ETH → $DOG → $FLU. Trading $FLU destroys $DOG supply. A virus can itself become a host for a deeper virus, to a maximum depth of 3, but only if Pons approves it as a pair token (see Hosts).
§What Pons does, and what VIRUS adds
VIRUS is a thin layer on top of Pons V2. It does not fork Pons, deploy its own curve or AMM, run a price oracle, or hold liquidity.
| Concern | Pons V2 | VIRUS |
|---|---|---|
| Token contract | Deploys the ERC-20 (ERC20Burnable) and mints the whole supply to the curve |
Nothing |
| Pricing | Bonding curve, then a Uniswap V4 pool with the Pons hook | A local port of the Pons curve math, used for quotes and minimum outputs |
| Quote asset | Any Pons-approved pair token | Sets the pair token to the chosen host |
| Anti-snipe | Launch-window snipe tax | Nothing |
| Graduation and liquidity | graduate, createGraduatedPool, permanently locked V4 position |
Exposes COMPLETE MIGRATION in the UI |
| Fee collection | Base fee, protocol share, creator tax, fee escrow | Sets the creator tax on chain so the controlled share reaches 80bps |
| Fee recipient | Pays the launch's creatorFeeRecipient |
Makes that recipient a unique, immutable VirusFeeder per virus |
| Fee use | Nothing further | 50% host burn / 30% developer / 20% treasury |
| Launch access, pair approval, fee policy | Controlled by the Pons owner | Reads them live and never bypasses them |
| Records | getLaunchedToken per launch |
VirusRegistry: hosts, viruses, strain numbers, burn totals |
§The VIRUS contracts
| Contract | Role |
|---|---|
VirusLaunchCoordinator |
Runs host checks, computes the creator tax, deploys the feeder, calls Pons launchToken, verifies the result, registers the virus and performs the optional atomic first buy. Has no admin, no receive, and no trade function. |
VirusFeeder |
One EIP-1167 clone per virus. The Pons creator fee recipient of that virus. feed(), claimDev(), burnStrayVirus(). No owner. |
VirusFeederFactory |
Deploys feeders at deterministic addresses and binds each to exactly one virus, once. |
VirusRegistry |
Canonical record of hosts and viruses. Owned by the VIRUS admin, whose powers are limited to new launches. |
VirusTreasury |
Holds the treasury's 20% of fed host tokens and the 2.5% inoculation fees. |
All VIRUS constants and formulas live in the VirusEconomics library. There are no proxies other than the immutable feeder clones, and nothing is upgradeable. Full signatures are in the Contract reference.
§Vocabulary
These words have one meaning each in these docs.
| Term | Meaning |
|---|---|
| host | A Pons V2 launch token used as the pair token of a virus. |
| virus | A Pons V2 launch made through VIRUS whose pair token is a host. Also called a child. |
| inoculate | To launch a virus: VirusLaunchCoordinator.inoculate(...). |
| infection | The relationship between a virus and its host. The first infection is the optional first buy made in the launch transaction. The infection route is the chain of hops from ETH to a virus. |
| strain | The sequential number VirusRegistry assigns to each virus when it is registered (strain 1, 2, 3, …). |
| feed | To call VirusFeeder.feed(): sweep what Pons allows, claim host from the escrow, split, burn. |
| burn | Destruction of host tokens through the host's own burn(uint256), which reduces totalSupply. Never a transfer to a dead address. |
| depth | Distance from the root. A Pons launch paired with ETH or a non-Pons asset has depth 0. A virus has its host's depth plus one. The maximum is 3. |
§Where the numbers come from
Every figure VIRUS shows comes from Robinhood Chain: Pons launch configs, the fee policy, pair approvals, the launch gate, reserves, balances and quotes. Nothing is hardcoded that Pons can change. The optional indexer adds speed and history, but anything it serves can be recomputed from events and contract state, and transaction-critical values (balances, devOwed, reserves, approvals, quotes) are always read from chain at the moment of use. Verify on chain shows how to check each one yourself.
Worked examples in these docs are labelled as examples and are computed from Pons published-source defaults. The live site computes the same figures from live values, which may differ.
§Evidence labels
Statements about Pons, Parasite and Robinhood Chain carry the classification used in the VIRUS reference audit, the project's log of every behavior it borrows, adapts or cannot reproduce (it is not a security audit):
| Label | Meaning |
|---|---|
VERIFIED_PARASITE |
Parasite behavior backed by text from parasiteonsol.fun. The site could only be read through search-engine excerpts. |
VERIFIED_PONS |
Behavior of the published Pons V2 source (ponsdotdev/pons-labs, commit 4bea1cf). Published source is not proof of deployed bytecode. |
VIRUS_ADAPTATION |
A deliberate VIRUS design decision. |
BLOCKED_BY_PONS |
Something VIRUS cannot do or guarantee because Pons controls it. |
UNVERIFIED |
Not yet confirmed from a primary source or a live read. Never presented as fact. |
§Launch availability
VIRUS runs in one of two modes:
- LIVE: the RPC reports chain 4663, the Pons factory has code, the VIRUS contracts are configured and found on chain, VIRUS launches are not paused, Pons
canLaunchis true for the coordinator, an enabled Pons launch config exists, the VIRUS fee target fits under the Pons creator-tax cap, and the build's launch flag is on. Your own address is checked against the Pons gate separately, when you inoculate. - LAB MODE: any of those conditions is false or unknown. INOCULATE is disabled, a banner says so, and all reads stay live.
When Pons launch access is closed, the banner reads "PONS V2 LAUNCH ACCESS IS CURRENTLY RESTRICTED. VIRUS IS RUNNING IN LAB MODE."
As of the reference audit (2026-09-29), the Pons fork tests that confirm the deployed Pons contracts match VIRUS's interfaces had not been run, and no VIRUS contract may be deployed to mainnet until they pass. See Risks.
§Reading order
- Hosts: what can be infected, and why Pons must approve it.
- Infection routes: how to reach a virus from ETH.
- Launching: the inoculate transaction, step by step.
- Trading: curve and pool mechanics.
- Fees and burns: the fee math.
- Feeding: how fees become burns.
- Graduation: the Pons lifecycle.
- Parameters, Contract reference, Verify on chain.
- Admin powers, Risks, FAQ, Parasite → VIRUS differences.