Skip to content

Ecosystem

What is live on Frost today.

The swap deployment is worth a second look for what it demonstrates: Uniswap V2 was written years before any of this existed, and it runs on Frost without a line changed. Post-quantum accounts interact with it as ordinary addresses, because from the contract’s point of view that is exactly what they are.

Present from genesis at fixed addresses, so tooling that hardcodes them works unmodified.

Contract Address
CREATE2 factory (EIP-7997) {ACCOUNTS.factory}
Multicall3 0xca11bde05977b3631167028862be2a173976ca11
Frame entry point 0x00000000000000000000000000000000000000aa
Frame expiry verifier 0x0000000000000000000000000000000000008141

Full list with descriptions: Predeploys.

The precompiles — including the ML-DSA verifiers at 0x14 and 0x15 — are available to any contract.

Tool Language Purpose
viem-8141 TypeScript Frame transactions and ML-DSA signing for viem. Browser-capable.
web3-8141 Python The same for web3.py.
frametx Go Reference CLI — keygen, addresses, sends, rotation.

Standard Ethereum tooling — Foundry, Hardhat, ethers, viem, explorers, indexers — works for everything except signing from a post-quantum account. See SDKs.

The chain is an ordinary EVM target with two additions worth designing around:

Post-quantum accounts are contracts. Do not gate on tx.origin == msg.sender — that idiom rejects every post-quantum account.

Signature verification is available to you. Any contract can call the ML-DSA precompiles for 16,000 gas. That opens designs that are not practical elsewhere: post-quantum multisigs, attestations verifiable on chain, or bridging authorities that survive a quantum adversary. See Deploy a contract.

If you deploy something on Frost and want it here, open a pull request against the documentation repository.