Tempo Standard Library
June 18, 2026 · View on GitHub
Tempo Standard Library
Tempo Standard Library is a collection of helpful Tempo specific contracts and libraries for use with Foundry.
Installation
forge install tempoxyz/tempo-std
Standard Precompiles
src ├── interfaces │ ├── IAccountKeychain.sol: Account Keychain (T3: call scopes, periodic limits) | Docs | Implementation │ ├── IAddressRegistry.sol: TIP-1022 Virtual Address Registry (T3+) | Implementation │ ├── IFeeAMM.sol: Fee AMM | Docs | Implementation │ ├── IFeeManager.sol: Fee AMM Management | Docs | Implementation │ ├── INonce.sol: 2D Nonce Management for Tempo Transactions | Implementation │ ├── IReceivePolicyGuard.sol: TIP-1028 Receive Policy Guard | Docs | Implementation │ ├── ISignatureVerifier.sol: TIP-1020 Signature Verification Precompile (T3+) | Implementation │ ├── IStablecoinDEX.sol: Stablecoin DEX | Docs | Implementation │ ├── IStorageCredits.sol: Storage credits precompile (T7+) | Implementation │ ├── ITempoStreamChannel.sol: Streaming payment channel escrow (concept) | Implementation │ ├── ITIP20Factory.sol: TIP-20: Factory Contract | Docs | Implementation │ ├── ITIP20RolesAuth.sol: TIP-20: Roles & Permissions | Docs | Implementation │ ├── ITIP20.sol: TIP-20: Core Token Standard | Docs | Implementation │ ├── ITIP403Registry.sol: TIP-403: Policy Registry System | Docs | Implementation │ ├── IValidatorConfig.sol: Manage consensus validators | Implementation │ └── IValidatorConfigV2.sol: Validator Config V2 (append-only) | Implementation └── StdPrecompiles.sol: Collection of precompiles and their interfaces on Tempo
Standard Contracts
src ├── interfaces │ ├── ICreateX.sol: @pcaversaccio/createx │ ├── IMulticall3.sol: @mds1/multicall3 │ └── IPermit2.sol: @uniswap/permit2 └── StdContracts.sol: Collection of predeployed contracts and their interfaces on Tempo
Standard Tokens
src └── StdTokens.sol: Collection of tokens and their interfaces on Tempo
Standard Vm
src └── StdVm.sol: Minimal Vm interfaces for RLP encoding, transaction execution, and signing cheatcodes
Signature Helpers
Solidity helpers for building, encoding, and signing the byte-packed signature blobs consumed by the TIP-1020 SignatureVerifier precompile. Useful for testing AA flows with Foundry without re-implementing low-S normalization, WebAuthn assertion construction, base64url, or P-256 address derivation.
src
└── sig
└── SignatureLib.sol: Encoders, low-S normalization, WebAuthn data builder, and Vm-based signers for secp256k1 / P-256 / WebAuthn signatures
Transaction Builders
Solidity libraries for building and RLP-encoding Ethereum and Tempo transactions, useful for testing with Foundry.
src
└── tx
├── AccessListTypes.sol: EIP-2930 access list types
├── Eip1559TransactionLib.sol: EIP-1559 (type 2) transaction builder
├── Eip7702TransactionLib.sol: EIP-7702 (type 4) transaction builder with authorization support
├── LegacyTransactionLib.sol: Legacy (type 0) transaction builder
├── TempoTransactionLib.sol: Tempo (type 0x76) transaction builder with batch calls, 2D nonces, and fee payer support
└── TxRlp.sol: RLP encoding helpers for transaction builders
Support
The current minimum supported Solidity version is 0.8.20.
Contributing
Our contributor guidelines can be found in CONTRIBUTING.md.
Security
See SECURITY.md.
License
Licensed under either of Apache License, Version 2.0 or MIT License at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in these packages by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.