This document explains how to set up the project for local development, testing, deployment, and frontend demo use.
- Node.js 18 or newer
- npm
- Git
- A wallet private key with testnet funds (Status Sepolia and optionally Arbitrum Sepolia)
git clone https://github.com/swanandi-bhende/syntreature
cd syntreature
npm installInstall frontend dependencies:
cd frontend
npm install
cd ..Create root environment file:
cp .env.example .env.localRequired root keys:
- STATUS_SEPOLIA_RPC
- ARBITRUM_SEPOLIA_RPC
- PRIVATE_KEY
Optional root keys:
- ETHERSCAN_API_KEY
- ARBISCAN_API_KEY
- REPORT_GAS
- COINMARKETCAP_API_KEY
The root file is used by Hardhat scripts (compile, test, deploy).
Create or update frontend environment file:
cd frontend
touch .env.localRequired frontend keys:
- NEXT_PUBLIC_STATUS_CHAIN_ID
- NEXT_PUBLIC_ARBITRUM_CHAIN_ID
- NEXT_PUBLIC_STATUS_EXPLORER
- NEXT_PUBLIC_ARBITRUM_EXPLORER
- NEXT_PUBLIC_ESCROW_ADDRESS_STATUS
- NEXT_PUBLIC_ARBITER_ADDRESS_STATUS
- NEXT_PUBLIC_GMX_ADDRESS_ARBITRUM
- NEXT_PUBLIC_AGENT_ADDRESS
- NEXT_PUBLIC_STATUS_RPC
- NEXT_PUBLIC_COLLATERAL_TOKEN_STATUS
npm run compilecd frontend
npm run devOpen:
Status Sepolia deployment:
npm run deploy:statusArbitrum Sepolia deployment:
npm run deploy:arbitrumDeployment artifacts are written in:
- deployments/status-sepolia-deployment.json
- deployments/arbitrum-deployment.json
- deployments/arbitrum-deployment.testnet.json
Compile:
npm run compileRun all tests:
npm run testRun status fork tests:
npm run test:fork:statusRun arbitrum fork tests:
npm run test:fork:arbitrumBuild frontend:
cd frontend
npm run build