Introduction
What NOME is, what it is for, and how the pieces fit together.
NOME is infrastructure for building, testing, and simulating onchain applications. It gives you controlled environments where accounts, assets, contracts, and network conditions are explicit, reproducible, and under your control.
Instead of waiting on a public network, coordinating shared test infrastructure, or writing brittle local scripts, you describe the conditions your application needs and NOME provisions an isolated environment that matches them. You can execute transactions, inspect every state change, reset to any snapshot, and run the same sequence again with identical results.
Who NOME is for
- Protocol and application teams validating contract logic against realistic account and asset distributions.
- Frontend and integration engineers who need a stable backend to build against while contracts are still changing.
- QA and release engineers running scenario suites that must behave identically in CI and locally.
- Researchers and auditors reproducing specific chain states to study how a system behaves under pressure.
How it fits together
Everything in NOME starts with an environment. An environment holds accounts, assets, deployed contracts, network configuration, and a complete, inspectable state history. You interact with it through the Console, the REST API, or the CLI.
- Define an environment: which accounts exist, what they hold, which contracts are deployed, and how the network behaves.
- Run transactions, contract calls, and multi-step scenarios against it.
- Inspect the resulting state diffs, decoded events, and execution traces.
- Reset to a snapshot and run again — with the guarantee that the same input produces the same outcome.
Next steps
- Follow the Quickstart to create your first environment in a few minutes.
- Read Concepts for the vocabulary used throughout the platform.
- Skim the API Reference if you prefer to start from the endpoints.