DOME Docs

SDK Overview

TypeScript SDK for Dome shielded transactions on Base.

@dome/sdk-evm is the TypeScript SDK for Dome on Base — deposit, sync shielded balance, and withdraw with Groth16 proofs.

Install

npm install github:Dome-Foundation/dome-sdk-evm#main

Monorepo:

npm install @dome/sdk-evm@file:../dome-sdk-evm
cd dome-sdk-evm && npm run build

Exports

import {
  deposit,
  withdraw,
  getBalance,
  DOME_SIGN_IN_MESSAGE,
} from '@dome/sdk-evm';

See example/eth.ts and the dome-web wallet.

Packages

PackageRole
@dome/sdk-evmClient SDK
@dome/backendIndexer + relayer API
@dome/core-evmContracts (Hardhat)
@dome/webNext.js wallet + marketing

Requirements

Before calling SDK functions, configure environment variables:

  • Indexer URL (DOME_EVM_INDEXER_URL)
  • Base RPC (DOME_BASE_RPC)
  • Pool + fee addresses
  • Circuit keyBasePath (HTTPS for browser)

Browser vs Node

RuntimeNotes
BrowserLoads circuits from CDN; use backend proxy or CORS-enabled API
Node / CLIDirect env vars; see Examples

Sections

Publish (maintainers)

Scoped npm publish requires the @dome org and NPM_TOKEN in CI. Bump package.json version and push to main — the workflow publishes when the version is new.

On this page