A Farcaster / Base mini app for depositing into Panoptic's PLP vaults (HypoVault contracts) and tracking your position. Unofficial interface.
| Vault | Address | Underlying |
|---|---|---|
Panoptic USDC PLP Vault (plpUSDC) |
0xb452af299c565D04B05E601efF2840e000C922f1 |
USDC |
Panoptic WETH PLP Vault (plpWETH) |
0x41b7D0515d709A4Fd2CF27f9d141D0c2F8713D04 |
WETH |
Addresses come from the hypoVaultManagerArtifacts/base/ deployment artifacts in
the hypovault repo and are verified on-chain (EIP-1167 proxies from the
HypoVaultFactory).
Status: the Base deployments are live contracts but test-scale (a few USDC of lifetime deposits) — Panoptic's active production vaults are on Ethereum mainnet (
plpUSDC 0x963Fe9c93bc353602656ee4051A75114bA74d6c5,plpWETH 0x779a2aa634A004b3a3f3b322083744869BBC6D66). This app targets Base as a demo/prototype; do not treat it as a production deposit interface.
HypoVaults are asynchronous — there is no instant ERC4626 deposit():
approvethe vault, thenrequestDeposit(assets)— funds queue into the current deposit epoch (cancellable while queued).- The vault manager fulfills the epoch (possibly partially — vaults are capped).
executeDeposit(user, epoch)credits your shares (callable by anyone).
Withdrawals mirror this: requestWithdrawal(shares) → manager fulfills →
executeWithdrawal(user, epoch).
The UI surfaces all three states: queued, fulfilled / claimable, and active shares.
npm install
npm run devOptional env (.env.local):
NEXT_PUBLIC_ONCHAINKIT_API_KEY— Coinbase RPC key (falls back to public Base RPCs)NEXT_PUBLIC_URL— canonical deployment URL for the manifest
Before shipping to production: sign the Farcaster accountAssociation for the
final domain (https://farcaster.xyz/~/developers) in src/lib/minikit.config.ts
and add real icon.png / splash.png / hero.png assets in public/.
Not investment advice. DeFi options vaults carry risk of loss; read the Panoptic docs before depositing.