Supply1,000,000 PairWETH / BRICK ChainEthereum
OwnerNone MintNone PauseNone BlacklistNone LP removalReverts StatusPre-launch · not deployed
Uniswap v4 · Ethereum mainnet

Trading activity becomes permanent onchain structure.

BRICK is a fixed-supply token paired with a Uniswap v4 hook. A 2% fee on swaps through the official pool accumulates toward the next masonry event, and the pot is routed by fixed contract rules into liquidity, BRICK supply reduction, operations, and the caller reward.

BRICK does not set, defend, or guarantee a market price. Its accounting metrics are not the same as market value.

1,000,000 fixed supply · 2% pool fee · 0.10 ETH event threshold · permissionless trigger

no owner · no mint · no team allocation · liquidity the hook cannot remove

Masonry eventSimulated
Event·
Block·
Mason·
Credit·
Preview event · not live
0.00 / 0.10 ETH to next eventPreview data
Drag to inspect

Interactive structure unavailable on this device

Fig. 01 · structure
Permanent liquiditySimulated
·
No events yet
Masonry eventsSimulated
·
No events yet
BRICK sent to graveSimulated
·
No events yet
Execution thresholdConstant
0.10 ETH
Fixed constant · BRICK_THRESHOLD
01

What trading activity builds

Most token fees leave the market through a treasury, marketing wallet, or team multisig.

BRICK keeps a portion of trading activity inside the system.

Fees are directed toward liquidity that remains in the pool and supply that is permanently removed. Each trade contributes to a market that becomes more durable over time.

BRICK charges a 2% fee and directs 62% of it back into the token’s structure. A visible, on-chain use for every fee collected.

The usual model
feetreasury / marketing / team
the fee leaves the trading system
BRICK
feeliquidity + permanent supply reduction
protocol-owned, and it stays in the pool
02

How the machine runs

STEP 1

A swap pays the hook 2%

Every swap in the official pool pays 2% on the ETH side. Both directions, and both exact-input and exact-output, so there is no shape of trade that avoids it.

The fee is taken by the hook itself rather than by the token, which is why a transfer between two wallets costs nothing.

FEE_BPS = 200
TraderPool WETH in BRICK out 2% fee ETH side, both directions
STEP 2

It accumulates in the pot

The fee sits in the hook as WETH and does nothing until there is enough of it to be worth spending. Nothing can take it out in the meantime.

There is no withdraw function on the contract, for any address, including the one that deployed it.

pot += fee
pot 0.10 ETH every eligible swap no withdraw function, to any address
STEP 3

At 0.10 ETH anyone can trigger it

Once the pot reaches the threshold, any address may call layBrick(). There is no allowlist, no keeper role and no privileged caller.

Whoever calls it is paid 1.2% for the gas they spent. That is the whole of what they get.

BRICK_THRESHOLD = 0.10 ether
any address may call layBrick() caller 1.2% reward
STEP 4

The pot splits four ways

One hundred bricks, one per percent. Thirty-five become liquidity, twenty-seven go to the quarry, and the rest funds operations with the caller’s 1.2% carved out of it.

The four numbers are constants. Nothing in the contract can change them.

LP 35% · BURN 27% · OPS 36.8% · KEEPER 1.2%
1 brick = 1% of a pot
35Permanent liquidity 27The quarry 38Operations, incl. 1.2 keeper
STEP 5

The liquidity has no way out

The 35% is added as a position the hook itself owns, and the remove-liquidity path reverts for every caller that tries it, the deployer included.

It is not locked for a period. There is no path, so there is nothing to unlock.

revert FloorIsPermanent()
position liquidity in no way out beforeRemoveLiquidity reverts for every caller
STEP 6

The trade that filled it earns the brick

The brick is credited to the swap that carried the pot over the threshold, not to whoever won the race to trigger it.

Triggering is permissionless and pays, so a bot wins that race every time. It takes the ETH. It does not take the record.

wall[idx].mason
the brick filling trade not the bot mason recorded on chain, permanently
03

The wall, and who holds it


Masonry history renders here once deployed.

Build the wall

Every BRICK holder is represented in the monument. Your brick's area reflects your current BRICK balance relative to total supply. Split a balance across multiple wallets and the total represented area does not increase.

Connect your wallet to highlight your brick.

Simulated
Holder brick

Live, balance-proportional visual representation. Updates when you buy, sell, transfer, or split BRICK across wallets. Not permanent.

Masonry brick

Permanent monument growth. The monument grows by one structural brick when layBrick() is successfully triggered. It never shrinks.

Hover or tap a brick Area is proportional to balance · live state, not permanent

The holder wall above is a visual representation of current balances. Drawing your brick there does not mint anything, create a separate token, grant governance rights, or change the masonry accounting. It is a picture of who holds what, right now. The collection in §02 is the separate thing that is minted, and it is minted from masonry events, not from balances.

04

What a masonry event leaves behind

Each masonry event creates one fully on-chain SVG brick. Its traits come from the event itself: the BRICK removed, the caller, the triggering trade, and the event index. No server, no IPFS, no external dependency. The image is generated by a contract and read straight off the chain.

Events laid0
Minted0
Unclaimed0
Mint costGas only

Nothing is random

The fire is read off the BRICK that event destroyed. The protocol spends a near-fixed amount of ETH on each buy-and-burn, so the tonnage it buys falls as the price rises. An early brick is coarse and heavy, a late one dense and small. A brick carries the market it was made in. Scarcity comes out of history, not a rarity table.

Quarried bricks

When the quarry’s miners claim the burn slice, no clay is cut. Those bricks are struck through and unfired, and they exist only because somebody chose to destroy their own BRICK into that epoch.

The mason’s mark

A lattice glyph walked from the mason’s address, struck into the frog: the recessed panel a brick is moulded with and stamped in. One per hand, and never chosen by the person carving it. Anyone may pay the gas to mint a brick; it always goes to the trader who earned it.

Every masonry event mints a fully on-chain brick. These are specimen renders of the two types.

Specimen brick, fired
Specimen · fired
Specimen brick, raw clay
Specimen · raw clay
Specimen brick, quarried
Specimen · quarried
05

What the contract enforces

Powers that do not exist

Every row below is enforced by code you can read, and the right-hand column shows exactly where to check it.

ControlPositionVerify
Owner / adminNone Brick.sol has no Ownable, no onlyOwner, no roles
MintImpossible no mint function exists; supply fixed at 1,000,000
Upgrade pathNone no proxy, no delegatecall, no implementation slot
Fee2%, fixed FEE_BPS is a constant, with no setter on the hook
Team allocationZero whole supply enters the pool at launch; no vesting contract
Team revenue36.8% of each pot OPS_BPS, paid in ETH automatically each event to one immutable address
Operations recipientImmutable set once at deploy, no setter; the deployer cannot redirect it afterward. Intended: a multisig
Operations powersNone over the protocol the ops address only receives ETH; it cannot pause, upgrade, change fees or touch liquidity, no such function exists
Liquidity withdrawalReverts beforeRemoveLiquidity reverts for every caller, deployer included
Opening the poolLauncher only beforeInitialize rejects every caller but the launcher, so no second pool can use this hook
Deployer powersbindPool, seedFloor both one-shot, both inert after launch, neither moves funds
Pause / blacklistNeither exists no pause modifier, no transfer hook on the token
Independent auditNot done in-house review complete, published at deployment
06

Burning BRICK for a share of the fee

Mining is destruction

You mine by destroying BRICK. It goes to the grave, circulating supply falls in the same transaction, and there is nothing to unstake.

Paid from fees, not emission

Each epoch's miners split 27% of one masonry pot, pro-rata to the BRICK they destroyed. That ETH was collected from real trades. No supply is minted to pay it, no schedule halves it, and no miner is paid out of another miner's loss.

You mine into the next brick

An epoch is paid by the brick after the one that closes it. The delay is the point: the pot is public and anyone can trigger masonry, so without it a large holder could burn at the last second and take a slice they knew the size of.

Epoch
The window your burn is counted in. It closes when the next brick is laid, and everything destroyed inside it shares one slice.
The course
Every burn in one epoch, laid side by side. Your width is your share of that slice, and it shrinks as other people join.
Settling
The brick after the one that closed your epoch. Only then does the ETH become claimable.
The grave
0x…dEaD, where destroyed BRICK goes. There is no path back, for anyone, including the protocol.

Cut the face

Every miner in the open epoch holds a slab of it, sized by the BRICK they destroyed. When the next brick is laid, that course settles and its ETH becomes claimable.

Preview
Rate · ETH per 1,000 BRICK destroyed
·awaiting deployment
Epoch fillof its 3× ceiling
Open epoch·
BRICK destroyed this epoch·
Miners this epoch·
Settling next·
Slice per masonry event0.027 ETH, split across the epoch
Maximum payout3× what you destroyed, priced at settlement
Destroy BRICK
BRICK
Connect a wallet to see what a cut would earn.
Irreversible. Burned BRICK cannot be recovered by anyone, including the protocol. Your epoch settles once two further bricks are laid, so payout depends on continued trading through the pool.
Settled · claimable
·ETH

Pull-based, and it never expires. An epoch you never got round to claiming is still claimable in full a year later. The contract has no sweep and no deadline.

Hover or tap a slab Slab width is proportional to BRICK destroyed
If nobody mines

The 27% simply buys BRICK and burns it, exactly as the protocol did before the quarry existed.

If an epoch is thin

Payout is capped at three times the pool-price value of the BRICK destroyed. Whatever the cap declines goes back to buy-and-burn.

EpochDestroyedMinersPaidRate / 1kYour claim
No epochs have settled. Mining begins when the pool does.

Mining is optional and speculative. It does not mint a token, an NFT or a position, grants no governance rights, and is not a yield product.

An epoch pays a pro-rata share of the 27% slice, in real ETH from trades that already happened. What it pays depends on how much the pool traded and how much BRICK was burned into the same epoch, so commit only what you intend to burn.

07

Where every fee goes

Eligible swaps pay a 2% fee on the ETH side. Fees accumulate inside the hook until the balance reaches 0.10 ETH, about 5 ETH of trading through the pool. Any address can call layBrick() and receive a 0.0018 ETH execution reward. The remaining balance is processed by the fixed allocation rules below. Nothing forces that volume to exist: the protocol builds at exactly the rate the pool is used, and at no volume it does not build at all.

Parameters
ParameterValue
Execution functionlayBrick()
Fee applies toEvery swap in the protocol pool, both directions and both exactness modes
Fee can changeNo. FEE_BPS is a constant with no setter.
Threshold0.10 ETH
Caller reward0.0018 ETH (1.2% of the threshold)
ChainEthereum mainnet
PairWETH / BRICK. An ERC-20 leg, so explorers and aggregators index the pool correctly
0%
The footingprotocol-owned liquidity
Added as full-range LP owned by the hook. The remove-liquidity path reverts for every address.
0%
The quarrysupply destruction
Paid to the miners who destroyed BRICK in the settling epoch. Whatever they do not take buys BRICK and sends it to a dead address instead. Either way circulating supply only decreases.
0%
The yardoperations, one fixed address
Paid in ETH to a fixed address set at deployment. The team holds no tokens, so this is its only revenue.
0%
The mason’s feepaid to whoever lays the brick
Paid to whoever calls layBrick(). Deducted from the operations share, so the four figures total 100%.

Allocation percentages describe the distribution of each 0.10 ETH pot at the moment a masonry event executes. They are fixed constants in the contract and total 100%.

The contract does not set or target a market price. It reports one accounting metric, ETH in permanent liquidity divided by circulating supply, and nothing more. The full definitions, the quarry, and the metrics are in the documentation.

08

How the metrics work

How the numbers are defined, and what is still open

Guarantees

Two protocol rules enforced in code

Liquidity added by the hook cannot be removed, and burned BRICK cannot return to circulation.

These two rules hold regardless of market conditions, and the removal path reverts for every address including the deployer. Everything else is a consequence rather than a guarantee. Outside liquidity providers cannot add to or rebalance the managed position, and founding liquidity cannot be withdrawn by anyone, including whoever provided it.
Metric

Implied liquidity price

The implied liquidity price is a transparent on-chain metric: cumulative ETH credited to the hook-owned liquidity divided by circulating supply.

It is not a redemption price, a market-price guarantee, or a promise of value. Credited ETH only increases and circulating supply only falls, so the figure cannot decrease. But the liquidity is full-range, so what the position holds at any moment varies with price. brickStats() returns every input, so the figure can be recalculated independently.
Review status

Review status

The in-house adversarial review is complete. It has not been published yet, and no independent third-party audit has been done.

124 of 124 tests pass, including a full launch rehearsal that deploys, binds, funds and seeds against the canonical PoolManager on a fork of Ethereum mainnet. The adversarial in-house review is complete and written down: findings, fixes, and the items still open. The source, the tests and the review notes publish at deployment, alongside the addresses that make every claim on this page checkable. No independent third-party audit has been completed, and no audited language is used until an external review is finished.
09

Read the code

ItemState
DeploymentNot deployed. No token, pool, bricks or on-chain history exist yet.
Token addressDoes not exist yet
Hook addressDoes not exist yet
ChainEthereum mainnet
PairWETH / BRICK. An ERC-20 leg, so explorers and aggregators index the pool correctly
Supply1,000,000 BRICK, fixed at deployment
Opening configurationTarget opening FDV 21 ETH (a launch-time parameter, not yet committed on-chain). The launch is single-sided: the pool opens holding every BRICK and no ETH, so no capital is committed at launch and nothing is bought. Buyers walk the price up through the founding range, and the ETH they pay accumulates inside it.
Test suite124 of 124 passing, including the mainnet-fork launch rehearsal against the canonical PoolManager and six stateful invariants over 96,000 random operation sequences
In-house reviewAdversarial review complete, published at deployment, including known open items
Third-party auditNot started. No audited language should be used until one is complete.
10

Questions

Can the liquidity be removed?
No. It is held by the hook and the remove-liquidity path reverts for every caller, the deployer included. There is no withdraw function. Verified against the real PoolManager on a mainnet fork.
Is there a team allocation or unlock?
No. The full 1,000,000 supply is minted once and seeded into the pool. No vesting, no treasury wallet, no mint function.
How does the team make money?
Only the fee. 36.8% of each pot is paid in ETH to a fixed operations address. The team holds no tokens, so it cannot sell into you.
Who can trigger a masonry event?
Any address, once the pot is full. No allowlist, no privileged caller; whoever calls it earns a 1.2% reward. A keeper backstops it so events fire reliably.

Every mechanism in full, plus the quarry, the metrics and the code, in the documentation.

The rules are public. The event is permissionless. The record stays on-chain.

Every trade adds to protocol-owned liquidity and permanently reduces BRICK supply, by fixed rules no address can change. The machine runs on its own, in public, on Ethereum.

Where this stands

Nothing is deployed. There is nothing to buy yet, and anyone offering you a BRICK contract address today is selling you something else.

The token address, the hook address, the source and the review all land on this page on launch day, together, because they are only worth anything to you as a set. Until then every figure here is a model and says so.

Follow @brickonchain The deployment transaction is posted there first
Preview Chain Ethereum Pair WETH / BRICK Pot 0.00 / 0.10 ETH Epoch · Rate · ETH/1k Masonry events 0 simulated