ORRANGE / Guides

Quickstart

Get a running local app in about ten minutes. This page is the shortest path from zero to /treasury.

Prerequisites

  • Node.js 18.18+ and npm (the repo is a Next.js 15 / React 19 app).
  • A privacy-capable Starknet walletReady (Wallet API ≥ 0.10), or use the ORRANGE-embedded Privy wallet lane. STRK20 private features require a wallet that supports the STRK20 Wallet API methods.
  • A small amount of Sepolia ETH/STRK for fees (Starknet Sepolia is the validated network for the private flows). Use the Sepolia faucet if needed.
  • STRK20 prover + discovery endpoints — end-to-end STRK20 actions need the operator’s proving/discovery stack. Without them, the UI loads but real shielded transfers cannot complete.

1. Install

# from the repository root
npm install

2. Configure the environment

cp .env.example .env.local

Fill in the values by category (never commit real secrets):

CategoryVariables
Wallet / PrivyPRIVY_APP_ID, PRIVY_APP_SECRET, NEXT_PUBLIC_PRIVY_APP_ID, NEXT_PUBLIC_READY_CLASSHASH
Starknet / STRK20ALCHEMY_STARKNET_KEY, NEXT_PUBLIC_STARKNET_RPC, NEXT_PUBLIC_STRK20_POOL, NEXT_PUBLIC_STRK20_SEPOLIA_POOL, NEXT_PUBLIC_USDC_SEPOLIA, NEXT_PUBLIC_CHAIN_ID
ProverNEXT_PUBLIC_STRK20_PROVER_URL
DiscoveryNEXT_PUBLIC_STRK20_DISCOVERY_URL
AI providerAI_API_KEY server-only, AI_BASE_URL, AI_MODEL
Treasury allowlistsAI_ALLOWED_ASSETS, AI_ALLOWED_DESTINATIONS server-only
AI_API_KEY, AI_ALLOWED_ASSETS, AI_ALLOWED_DESTINATIONS, and the Privy secret are server-only — never prefix them with NEXT_PUBLIC_ or they ship to the browser. See Environment for the full reference.

3. Run

npm run dev

Open http://localhost:3000.

Shortest path to the treasury

  1. Connect a privacy wallet from /wallet (Ready extension, or the Privy lane).
  2. Enable private receiving — the app submits a real STRK20 action; the wallet registers your viewing key and shields the first note in one transaction.
  3. Inspect your private balance on /wallet — the balance comes from the wallet’s discovery, never a local cache.
  4. Open /treasury — the command center is live on page load with a proactive diagnosis. Select a guardrail, ask Hamster, or try a What-If simulation.
End-to-end execution requires a live privacy wallet, a funded Sepolia account, and the STRK20 operator proving/discovery stack. If the AI is not configured, /treasury still works for portfolio and health — diagnosis just uses the deterministic engine instead of the LLM.