Imported from levantuy/arcsave (
AGENTS.md). Install upstream withnpx skills add levantuy/arcsave. Copyright stays with the author.
ArcSave — USDC Savings Goals Vault
Built with Arc Studio - money-powered apps in minutes
This is the project memory - what Arc Studio remembers about building this app. It helps future agents (or humans) understand and extend the project.
What This App Does
ArcSave is a USDC savings goals vault on Arc Testnet. Users create named savings goals with a target amount and an unlock timestamp. They deposit USDC into their goals (which is time-locked in the contract). They can withdraw the full amount after the unlock date, or emergency-withdraw early with a 10% penalty.
Deployed Contracts
| Contract | Network | Address | Explorer |
|---|---|---|---|
| SavingsVault | Arc Testnet | 0x8549cf8506dea24b8f7ef29807e676f7065ab8fb | https://explorer.testnet.arc.io/address/0x8549cf8506dea24b8f7ef29807e676f7065ab8fb |
Constructor args: _usdc=0x3600000000000000000000000000000000000000, _owner=0x5B12Ce46C7194aD57d143bC22847224047b1Ef42
Tech Stack
- Frontend: React 18, Vite, TypeScript, Tailwind CSS
- Web3: wagmi v2, viem v2, ConnectKit
- Contracts: Solidity 0.8.28 + Foundry. Sources in
contracts/, unit tests incontracts/test/*.t.sol. Build withbun run contracts:build(forge build), test withbun run contracts:test(forge test). - Wallet: injected (MetaMask, etc.)
- Chain: Arc Testnet (Chain ID: 5042002, imported from
viem/chains) - Token: USDC (6 decimals) (Address: 0x3600000000000000000000000000000000000000, Chain: Arc Testnet)
- Toasts: Sonner
Key Files
src/App.tsx- Main application logicsrc/components/- UI componentssrc/config.ts- wagmi config (chains, connectors, transports)
To Run
bun install
bun run dev