Quickstart
Verax supports two common paths:
- Use an existing Verax deployment on a supported network.
- Deploy and operate your own Verax instance on a new network.
Use an existing Verax deployment
This is the fastest path for most teams.
Choose this path if you want to issue or consume attestations on an existing Verax network without operating contracts, subgraph, or explorer infrastructure yourself.
- Pick a supported network from Networks and Addresses.
- Decide whether you only need to consume attestations, or whether you also need to issue them.
- If you only need reads, start with the SDK, the Subgraph, or the Explorer.
- If you want to issue attestations, follow the Build Workflow:
- choose or create a schema;
- optionally add modules;
- deploy or register a portal;
- issue attestations through that portal.
Use this path when:
- you want Verax discoverability without operating infrastructure;
- your application can fit into the existing shared registry model on a supported chain;
- you want to prototype quickly on Linea, Arbitrum, Base, or BSC.
Deploy your own Verax instance
Use this path when you need a new chain deployment or want to operate the full stack yourself.
Running your own instance means owning more than contracts. You will usually need to operate or customize the subgraph, SDK config, explorer config, canonical schema bootstrapping, and deployment addresses too.
- Deploy the contracts and registries.
- Run post-deployment bootstrapping for canonical schemas.
- Optionally deploy the standard library and EAS compatibility helpers.
- Deploy a subgraph for the new chain.
- Add the new configuration to the SDK and explorer.
The full workflow is documented in Deploy a Verax Instance.
Main Concepts
Schema: the typed structure an attestation follows.Portal: the contract entrypoint used to issue attestations.Module: reusable validation logic chained by a portal.Attestation: the onchain record stored byAttestationRegistry.
Operational Notes
Testnets are permissionless for schema, module, and portal registration. Mainnets still require issuer allowlisting for schema, module, and portal registration.
subject is stored as raw bytes, and attestation IDs are chain-prefixed. Both choices are important for cross-chain
and non-address use cases.