Skip to content

Latest commit

 

History

History
123 lines (84 loc) · 6.28 KB

File metadata and controls

123 lines (84 loc) · 6.28 KB

MARK

TruffleHog

Privacy-first settlement infrastructure leveraging zero-knowledge technologies for secure, private, and scalable transactions. Built for EVM-compatible blockchains, with native support for the Optimism Superchain.

Code is a rule. No DAO, no drama. Don't Trust, Verify.

Settlement rules are enforced on-chain. Whether operators run it as a centralized service or a decentralized network is their choice — the contracts don't care.

Quick Start (5 minutes)

# Prerequisites: Node.js 24, pnpm, Foundry, uv (all auto-installed by bootstrap)
git clone https://github.com/trade/mark.git
cd mark

# Install prerequisites automatically (or skip if you already have them)
./scripts/bootstrap.sh

# Or just check what's installed:
# ./scripts/bootstrap.sh --check

pnpm i
# Terminal 1: Start local Anvil (OP Sepolia fork)
mise run anvil
# Terminal 2: Deploy contracts to local Anvil
mise run deploy-local
# Terminal 3: Start frontend dev server
pnpm dev:frontend

Alternatively, run ./scripts/bootstrap.sh on its own first to see which tools it installs. Visit http://localhost:5173 to see the MARK dashboard running on local Anvil (OP Sepolia fork).

Missing prerequisites? See Getting Started for installation instructions, or run ./scripts/bootstrap.sh to install them all at once.

What Just Happened?

  • ✅ Installed dependencies (contracts + frontend)
  • ✅ Started local Anvil (OP Sepolia fork)
  • ✅ Deployed MARK contracts to local Anvil
  • ✅ Launched frontend dev server

Next steps: Try the tutorial or explore the architecture.

Local Verification (Recommended Before PR)

mise run ci-fast

mise run ci-fast runs the local fast pipeline: typecheck, lint, secret scan (trufflehog), semgrep (security), contracts unit tests, and circuits tests.

Documentation

Core Documentation

  • Getting Started — Development setup, code standards, and contribution guidelines
  • Tutorial — End-to-end transaction flow walkthrough (deposit, bridge, settlement)
  • Architecture — System design, domain rules, and contract interactions
  • Deployment — Step-by-step deployment to testnet and mainnet
  • Branching Strategy — Git workflow, release process, and CI/CD
  • Troubleshooting — Common issues and solutions

Additional Resources

Generate API docs: cd contracts && forge doc --out docs/api

Deployed Contracts

OP Sepolia Testnet (chainId: 11155420)

Status: Active testnet deployment - NOT production

Missing: Groth16SettlementVerifier (deployment in progress)

Contract Address
RYLA 0xa27360e124B94449249D1E919d3363BfF1c10c02
MARKSettlementModule 0xB1CD6e5B88EF5979AE5306A11302Aa2F19c6Ad59
MARKBridgeAdapter 0x5F3823739E510981A821aC5E99235e36f65cBc71
AttestedSettlementVerifier 0xECBd3bEf80fd4c05DBEdE45464A1d264E0884260
MARKPoolVerifier 0xEE8aE1d7FE8193411AAfC8eC6a53D7897BB3581a
MARKPool 0xD73594f95Cd154a79252d0187C0704D744bFFCAA
RYLACreditLedger 0x68F3D477FBb82b5cF835F31015532275E5d6fc5B
MARKWithdrawAdapter 0xC5fD2Aef37606D34d1DC978AEbB8521980E72328

Verification:

Key Features

  • RYLA Token — Superchain-compatible ERC-7802 credit token with role-gated mint/burn
  • Settlement Module — Operator-gated settlement with replay protection and ZK proof verification
  • Bridge Adapter — Cross-chain RYLA transfers via SuperchainTokenBridge with rate limits
  • ZK UTXO Pool — Privacy-preserving pool with Groth16 proof verification and nullifier registry
  • Withdrawal System — EIP-191 signature-based withdrawals with dual-signature security

See contracts/README.md for detailed contract documentation.

External Resources

Security

Report vulnerabilities via GitHub Security Advisories. See SECURITY.md for details.

License

Licensed under the MIT License.