Decentralized vault hub for Phoenix perpetual futures on Solana. Deposit USDC into manager-run pools; automated trading via Phoenix + Flight builder fees.
| Layer | Tech |
|---|---|
| On-chain | Anchor (programs/phoenix-vault) |
| Frontend | Next.js 14, Tailwind, Framer Motion, Solana Wallet Adapter |
| Backend | Next.js API routes, Drizzle + Neon Postgres |
| Indexer | Vercel Cron → Phoenix REST API |
| Trading | @ellipsis-labs/rise SDK + Phoenix Flight |
# Install
cd app && npm install
# Copy env
cp .env.example .env.local
# Fill JWT_SECRET (optional DATABASE_URL for live DB)
# Dev server (works without DB — uses demo pools)
npm run devOpen http://localhost:3000.
programs/phoenix-vault/ Anchor program
app/ Next.js app (deploy this to Vercel)
packages/sdk/ Phoenix + vault helpers
packages/indexer/ Standalone indexer (optional)
tests/ Anchor integration tests
infra/ Deploy scripts
Requires Anchor 0.30+ and Solana CLI.
anchor build
anchor deploy --provider.cluster devnet
# Update NEXT_PUBLIC_PROGRAM_ID in app/.env.localcd app
export DATABASE_URL=postgresql://...
npm run db:migrate
npm run db:seedWithout DATABASE_URL, the app serves curated demo pools.
cd app
npx vercel --prodSet environment variables from app/.env.example. Root directory for Vercel: app.
Cron jobs (NAV every minute, leaderboard every 5 min) are defined in app/vercel.json.
- Phoenix Flight — 5 bps on every routed trade → platform treasury
- Vault performance fee — high-water-mark split (default 80% manager / 20% platform)
See RUNBOOK.md.
Not available in the U.S. or sanctioned jurisdictions. Perpetual futures involve substantial risk. Smart contracts require audit before mainnet deployment with real funds.