Overview
TECT is a plain ERC-20 token. There is no mint function, no admin key, no proxy, and no pause. The total supply of 100,000,000 TECT is minted once at deployment and placed into a Uniswap v4 liquidity pool, which is then locked forever.
The v4 pool uses a custom hook contract that runs a small piece of logic on every swap. That hook does two things:
- Collects a flat 1% fee on every swap (buy or sell) into the treasury.
- On sells only, collects a personalised sell tax (between 0.3% and 8%) into a reward pool for stakers.
That's the entire mechanic. The rest of this document is details.
How it works
Three actors
| Role | Latin name | What they do |
|---|---|---|
| Stakers | CIVES (citizens) | Lock their TECT in the staking contract. Their personal sell tax drops toward zero and they earn rewards (TECT and WETH — see below) from every sell someone else makes. |
| Sellers | BARBARI (outsiders) | Sell without staking. They pay between 0.3% and 8% of their trade to the staker reward pool — paid in TECT if they specified an exact input, or WETH if they specified an exact output. |
| Treasury | SENATVS (the senate) | A plain EOA wallet that receives the flat 1% fee on every swap. Has no authority over the contracts. |
The key word is personalised. Your sell tax depends on your own stake ratio, not on anyone else's behaviour. You control it entirely by how much of your TECT you choose to lock.
Why Uniswap v4?
A classical ERC-20 tax token uses a _transfer override, which can't
tell routers, LP adds, and aggregator paths apart — so it taxes everything indiscriminately.
A v4 beforeSwap hook runs only on swaps, has access to the
sender address, and can compute any logic we want. That's the layer where a
personalised per-wallet tax becomes cleanly expressible.
Staking
What you do
- Approve the staking contract to spend your TECT.
- Call
stake(amount). Your tokens move from your wallet into the contract. - Your sell tax drops immediately, proportional to how much of your total TECT is now staked.
- As other people sell, rewards accrue in two independent accumulators — one for WETH (exact-output sells) and one for TECT (exact-input sells). Call
claim()for WETH andclaimTect()for TECT at any time.
The 7-day cooldown
When you want to unstake, you first call requestUnstake(amount). The
tokens are then in a 7-day cooldown. After 7 days you call unstake()
and they return to your wallet.
Important: while tokens are in cooldown, they count toward your wallet balance, not your staked balance, for the purpose of computing your sell tax. This is the anti-flashstake mechanism — it prevents someone from staking one block before a sell to lower their tax and unstaking the next block.
The reward formula
Rewards use the Synthetix rewards-accumulator pattern.
There is one global rewardPerShare value that increases every time someone sells.
Your claimable balance is:
earned(you) = stakedBalance × (rewardPerShare − rewardPerSharePaid[you]) / 1e18
This is O(1) — claiming doesn't iterate over anyone else, and your gas cost doesn't grow with the number of stakers.
Sell tax curve
Your personal sell tax is a linear interpolation between an 8% base (wallet only, no stake) and a 0.3% floor (fully staked).
Example ladder
If your wallet + staked balance sums to 1,000 TECT:
The formula
stakePercent = stakedBalance / (stakedBalance + walletBalance)
sellTaxBps = 30 + (800 − 30) × (1 − stakePercent)
= 30 + 770 × (1 − stakePercent)
Where 30 basis points = 0.30% and 800 basis points = 8.00%. The hook reads your stake ratio at the exact moment of the swap and applies this formula.
The 1% SPQR fee
Separate from the sell tax, there is a flat 1% fee on every swap — buys and sells alike. It funds the treasury, which is a plain EOA controlled by the project. The treasury uses these funds for audits, hosting, domains, memes, and ongoing ops.
The name "SPQR" is drawn from the Roman senate motto (Senātus Populusque Rōmānus, "the senate and the people of Rome"). It's branding. The mechanic is: 1% of every swap → treasury EOA.
Buys are only taxed 1%
Buyers pay just the 1% SPQR fee. There is no sell tax on buys. The 0.3%–8% personalised tax applies only when you sell TECT for WETH.
Aggregator warning
Route swaps through the Tectonic app, not 1inch / CoW / UniswapX
The hook needs to see your address to compute your personalised sell tax. When you swap through the Tectonic app's AGORA tab, the hook gets your address and prices you at your real stake ratio.
When you swap through an external aggregator, the hook sees the aggregator's executor contract instead of you. It cannot look up your stake ratio, so it falls back to treating you as unstaked — full 8% BARBARI + 1% SPQR = 9% total sell tax.
This is a feature, not a bug. It keeps volume on the hook pool where personalised pricing is honoured, and makes aggregator-routed selling painful enough that people route through the app instead.
Tokenomics
Constants
| Total supply | 100,000,000 TECT · fixed · no mint function |
| Decimals | 18 |
| Launch FDV | $10,000 · initial tick ≈ $0.0001 / TECT |
| Flat 1% fee | Every swap · both directions · forever · to treasury |
| Sell tax | 8% base · 0.3% floor · scales by stake ratio · to stakers |
| Unstake cooldown | 7 days · cooling tokens count as wallet |
| Reward currency | TECT + WETH · dual-track O(1) accumulators · claim() / claimTect() |
| Treasury | Plain EOA · receives fees only · no contract authority |
| Admin key / proxy / pause | None |
Launch LP — four concentrated zones
All 100M TECT is seeded as single-sided liquidity (only TECT, no WETH). Buyers
provide the WETH by trading into the pool. The LP position NFT is transferred to
0x000…dEaD immediately after seeding — the liquidity is locked forever.
| Price range | TECT seeded | % of supply |
|---|---|---|
| 1× → 3× launch FDV | 30,000,000 | 30% |
| 3× → 10× launch FDV | 30,000,000 | 30% |
| 10× → 100× launch FDV | 25,000,000 | 25% |
| 100× → 1000× launch FDV | 15,000,000 | 15% |
As the price climbs through each zone, more tokens become available. Early buyers get the cheapest ticks; sustained price appreciation unlocks deeper liquidity without needing any LP management.
Launch sequence
We publish the full launch sequence so nothing is skipped or quietly bypassed.
- Contract freeze done
Final source code; full test suite green; invariants documented.
- Deploy scripts done
Foundry deploy scripts for Sepolia and mainnet; hook address mined with HookMiner.
- Internal review done
Friend-of-project Solidity review; hand-computed accumulator math.
- Sepolia smoke test done
Live testnet deploy of the audited v2 contracts; on-chain stake → BARBARI arrival →
syncRewards()→claimTect()cycle verified. - Primary audit next
Full-scope external audit (Spearbit / Trail of Bits / OpenZeppelin — TBD).
- Public audit contest pending
Code4rena competitive audit. Bounty funded from anticipated treasury revenue.
- Address findings pending
All critical and high findings resolved; re-attestation signed.
- Mainnet deploy pending
Hardware wallet signer; Foundry broadcast; contracts verified on Etherscan.
- Pool initialisation pending
(TECT, WETH) v4 pool created with Tectonic hook attached. Price set to $0.0001.
- LP seed pending
Four concentrated single-sided positions; 30/30/25/15M TECT across zones.
- Burn LP NFT pending
The LP position NFT is transferred to
0x000…dEaD. Permanent. - Public launch pending
Announcement; dex screener listing; first trades go through the pool.
Contract addresses
Contracts are not yet deployed to mainnet. Addresses will appear here after launch.
| TECT (ERC-20) | pending — post-launch |
| TectonicStaking | pending — post-launch |
| TectonicHook | pending — post-launch |
| TectonicRouter | pending — post-launch |
| Treasury (EOA) | pending — post-launch |
| v4 pool key | pending — post-launch |
Frequently asked questions
Is this a rugpull?
No. All 100M TECT are minted into four concentrated v4 LP positions at deploy, and the LP position NFT is then transferred to the dead address. There is no mint function, no proxy, no admin, and no pause.
The treasury is a plain EOA that only receives the 1% fee — it has no authority over the token, the hook, or the staking contract.
Why Uniswap v4 and not a simpler ERC-20 tax token?
A v4 beforeSwap hook runs arbitrary logic at the moment of a swap — the only point at which a personalised sell tax can be computed cleanly. A classical ERC-20 _transfer override cannot distinguish routers, LP adds, or aggregator paths, so it taxes every transfer indiscriminately. The hook approach is surgical.
What happens if I route through 1inch, CoW, or UniswapX?
The hook sees the aggregator's executor contract as the sender, so it cannot look up your stake ratio. It prices you as fully-unstaked and applies the full 8% sell tax + 1% fee = 9% total.
Route through the AGORA tab in the Tectonic app to preserve your personalised pricing.
What is the cooldown for?
It's an anti-flashstake mechanism. Without a cooldown, someone could stake one block before a sell (to lower their tax) and unstake the next block. The 7-day cooldown makes that unprofitable.
Tokens in cooldown count as wallet balance, not staked balance, while they cool down. So your sell tax temporarily returns to the higher rate if you have an active cooldown.
What currency are rewards paid in?
Both TECT and WETH — one accumulator for each. Which one a given sell funds depends on how the seller routed their swap:
- Exact-input sell (seller specifies how much TECT they're sending in): the hook extracts the 8% BARBARI tax in TECT, so that sell funds the TECT accumulator.
- Exact-output sell (seller specifies how much WETH they want out): the hook extracts the tax in WETH, funding the WETH accumulator.
Once the hook has called poolManager.take(...) to pull the tax into the staking contract, it calls staking.syncRewards() to fold whichever currency just arrived into the matching accumulator. Stakers then call claim() for WETH or claimTect() for TECT — both are O(1) and never iterate over other stakers.
The 1% SPQR fee always goes straight to the treasury EOA in whichever currency the sell was specified in (treasury can unwrap / swap off-chain).
Can I still lose money?
Absolutely. This is a memecoin. The price of TECT is whatever the market decides. If nobody sells, nobody earns rewards. If volume dies, so does the project.
Stake only what you can afford to have locked and possibly lose entirely. This site and its contracts are entertainment and economic experiment. The contracts are real; the outcome is uncertain.
Who controls the treasury?
The treasury is a plain EOA (externally-owned account) controlled by the project operator. In v1, governance is deliberately simple — there is no on-chain voting. Treasury funds go toward audits, infrastructure, domains, and ops.
A multisig may eventually replace the EOA. That is a social promise, not a contractual one. Hold only if you're comfortable with that.
Why the Roman branding?
Two reasons. First, it's memorable — memecoins live and die on identity. Second, the mechanic genuinely fits the narrative: there are two classes (those who swear the oath and those who don't), the loyalists receive a share of what the others pay, and nothing can be changed once deployed.
Everywhere you see Latin on the marketing site, there's a plain-English explanation here in the docs. The glossary below is the full translation list.
Glossary (Latin → English)
All of these are branding terms. None of them affect the mechanics — they're just names.
- CIVIS / CIVES (singular / plural)
- "Citizen" / "citizens". A staker — someone who has locked TECT in the staking contract.
- BARBARVS / BARBARI
- "Outsider" / "outsiders". A seller who has not staked. Pays the full 8% sell tax.
- FORVM
- "The forum". The staking contract interface — where you stake and unstake.
- TEMPLVM
- "The temple". The reward pool where sell taxes accumulate for stakers to claim.
- SENATVS
- "The senate". The treasury EOA that receives the flat 1% fee.
- AGORA
- "The marketplace". The in-app swap tab — always route swaps here, not through external aggregators.
- SPQR
- "Senātus Populusque Rōmānus". Used as the brand name for the flat 1% treasury fee.
- AQUILA
- "Eagle". The Roman legion standard. Used as the brand mark.
- TRIBVTVM
- "Tribute / tax". Refers to the sell tax.
- CONGIARIVM
- "Imperial gift to loyal subjects". Used poetically for staker reward payouts.
- Pax Tectonica
- "Tectonic peace", modelled on Pax Romana. The state of things after launch.
- Stake aut mori
- "Stake or die". The slogan — stake your TECT or pay the 8% sell tax. Not literal.
- MMXXVI
- Roman numeral for 2026 — the year of launch.
Risks & disclaimer
- Smart contract risk. Even audited contracts can contain bugs. Multiple audits and a public contest are planned pre-launch, but no audit is a guarantee.
- Market risk. TECT is a memecoin. The price can and will fluctuate, and it can go to zero. Do not hold more than you're comfortable losing entirely.
- Liquidity risk. If volume dries up, staker rewards (which come from sell tax) dry up with it.
- Aggregator misrouting. If you forget and route through 1inch / CoW / UniswapX, you pay the full 9% sell tax instead of your personalised rate. There is no way to recover the difference.
- Treasury trust. The 1% fee is received by a plain EOA. The operator can spend it on anything; there is no on-chain vote. This is a social, not a contractual, promise.
- Regulatory risk. This is not investment advice, not a security, not a pooled-investment vehicle. Jurisdictions vary; check your own.
Tectonic is entertainment and economic experiment. The contracts are real. The outcome is not guaranteed.↑ Back to top