NOME
Docs/Getting Started

Quickstart

Create an environment, fund an account, execute a call, and inspect the result.

This guide walks through the core loop: create an environment, populate it, execute against it, and inspect what happened. It takes about five minutes.

1. Install the CLI

terminalbash
npm install -g @nome/cli
nome login

The CLI authenticates with an API key scoped to your workspace. See Authentication for how keys and scopes work.

2. Create an environment

terminalbash
nome env create \
  --name "checkout-flow" \
  --chain evm \
  --block-time 2s \
  --accounts 8

This provisions an isolated EVM-compatible environment with eight funded accounts and a two-second block cadence. The response includes the environment id (env_…) and an RPC endpoint you can point existing tooling at.

responsejson
{
  "id": "env_7f3a2c",
  "name": "checkout-flow",
  "status": "ready",
  "rpc": "https://rpc.nomefamily.lol/env_7f3a2c",
  "accounts": 8,
  "snapshot": "snap_0001"
}

3. Deploy and execute

Point your existing deployment scripts at the RPC endpoint, or use the API to execute directly:

execute.tsts
import { Nome } from "@nome/sdk";

const nome = new Nome({ apiKey: process.env.NOME_API_KEY });
const env = await nome.environments.get("env_7f3a2c");

const run = await env.execute([
  { type: "deploy", artifact: "Vault", from: "deployer" },
  { type: "call", to: "Vault", fn: "deposit", args: [250n], from: "user_1" },
]);

console.log(run.status);          // "ok"
console.log(run.diff.summary);    // { writes: 3, events: 2, gasUsed: 51204 }

4. Inspect and reset

terminalbash
nome env inspect env_7f3a2c --last-run
nome env reset env_7f3a2c --to snap_0001

inspect prints the state diff, decoded events, and call trace for the last run. reset returns the environment to the named snapshot so you can run the sequence again.

TipEvery run is recorded with its inputs. Re-running the same inputs against the same snapshot produces the same state root — that is the guarantee NOME is built around. See Methodology.