MAXION is the intelligence layer for real-world asset (RWA) yield on Mantle. It doesn't chase yield — it explains it.
Users aggregate RWA-backed yields, allocate capital by risk appetite, and receive AI-driven explanations of yield quality, risk, and optimal allocation strategies.
"Intelligence for real yield."
- Yield Vault: ERC20 vault contract with share-based accounting
- Multi-Strategy: Support for multiple RWA strategies (Treasury bonds, Real estate, Private credit, Infrastructure)
- Automated Yield: Automatic yield harvesting and distribution
- Performance Fees: Configurable protocol fees
- Yield Explanation: "Why is this yield X%?"
- Risk Assessment: Transparent risk factor analysis
- Allocation Advice: Personalized strategies based on risk profile
- Context-Aware: Analyzes specific assets and amounts
- Intelligence Boot Sequence: Premium loading experience
- Ultra-Responsive: Desktop sidebar + mobile bottom nav
- Framer Motion Animations: Smooth, premium interactions
- MAXION Design System: Custom brand colors and typography
- MongoDB Persistence: User sessions, allocations, AI analysis logs
- Next.js 14: App Router with Server Components
- Web3 Integration: wagmi + RainbowKit on Mantle
- Vercel Deployment: Production-ready with automatic CI/CD
┌─────────────────────────────────────────────────────────┐
│ FRONTEND (Next.js 14) │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ Dashboard │ │ RWA Assets │ │ Allocate │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ │
│ ┌──────────────────────────────────────────────────┐ │
│ │ AI Analyst Panel (Slide-in) │ │
│ └──────────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────────┘
│ │ │
▼ ▼ ▼
┌─────────────────┐ ┌─────────────────┐ ┌─────────────┐
│ Web3 (wagmi) │ │ API Routes │ │ AI Service │
│ - RainbowKit │ │ - Users │ │ - Analysis │
│ - viem │ │ - Allocations │ │ - Context │
└─────────────────┘ └─────────────────┘ └─────────────┘
│ │
▼ ▼
┌─────────────────┐ ┌─────────────────┐
│ Smart Contracts│ │ MongoDB │
│ (Mantle) │ │ - Users │
│ - YieldVault │ │ - Allocations │
│ - RWAStrategy │ │ - AI Logs │
└─────────────────┘ └─────────────────┘
- Framework: Next.js 14 (App Router)
- Language: TypeScript (strict mode)
- Styling: Tailwind CSS + shadcn/ui
- Animations: Framer Motion
- Charts: Recharts
- Wallet Connection: RainbowKit
- Ethereum Library: wagmi + viem
- Blockchain: Mantle (Testnet & Mainnet)
- Smart Contracts: Solidity ^0.8.20 + OpenZeppelin
- API: Next.js API Routes
- Database: Supabase (free tier)
- Validation: Zod
- LLM Integration: Structured prompt templates
- Context-Aware: Asset + user profile analysis
- Logging: Full conversation history in Supabase
- Deployment: Vercel
- CI/CD: Automatic GitHub integration
- Smart Contracts: Hardhat + Mantle RPC
- Environment: dotenv
node >= 18.0.0
npm >= 9.0.0
git# Clone repository
git clone https://github.com/your-username/maxion-dapp.git
cd maxion-dapp
# Install dependencies
npm install
# Setup environment
cp .env.example .env.local
# Edit .env.local with your values
# Install contract dependencies
cd contracts
npm install
cd ..Required variables in .env.local:
# MongoDB
MONGODB_URI=mongodb+srv://...
# Blockchain
NEXT_PUBLIC_CHAIN_ID=5003
NEXT_PUBLIC_VAULT_ADDRESS=0x...
NEXT_PUBLIC_USDC_ADDRESS=0x...
# WalletConnect
NEXT_PUBLIC_WALLETCONNECT_PROJECT_ID=...See .env.example for complete list.
# Start Next.js dev server
npm run dev
# Open http://localhost:3000# Compile contracts
npm run compile
# Deploy to Mantle Testnet
npm run deploy:testnet
# Run tests
npm run test# Build for production
npm run build
# Start production server
npm startmaxion-dapp/
├── contracts/ # Smart contracts (Hardhat)
│ ├── contracts/
│ │ ├── YieldVault.sol
│ │ └── strategies/RWAStrategy.sol
│ ├── scripts/deploy.ts
│ └── hardhat.config.ts
├── src/
│ ├── app/ # Next.js App Router
│ │ ├── page.tsx
│ │ └── api/ # API routes
│ ├── components/ # React components
│ ├── lib/ # Utilities
│ │ ├── mongodb.ts
│ │ ├── models/ # MongoDB schemas
│ │ └── web3/ # Web3 hooks
│ └── types/ # TypeScript types
├── public/ # Static assets
└── ...config files
See PROJECT_STRUCTURE.md for detailed breakdown.
{
maxionGreen: '#3EF3A3', // Primary brand
obsidianBlack: '#0B0E11', // Background
graphitePanel: '#161B22', // Surfaces
slateGrey: '#1F2937', // Borders
signalCyan: '#2BD9FE', // AI accent
riskRed: '#EF4444', // Risk indicators
warningAmber: '#FACC15', // Warnings
}- UI Text: Inter
- Numbers/APY/Charts: JetBrains Mono
- Framer Motion: All interactions
- Loading: Intelligence Boot Sequence (2-3s)
- Transitions: Smooth page/view transitions
Main vault contract for managing RWA yield positions.
Key Functions:
deposit(uint256 assets)- Deposit USDC, receive shareswithdraw(uint256 shares)- Burn shares, receive USDCaddStrategy(...)- Add new RWA strategyharvestYield()- Collect yield from all strategies
Features:
- ERC20 vault shares
- Multi-strategy allocation
- Performance fees
- Emergency pause
Mock strategy adapter for RWA yield generation.
Simulates:
- Treasury bonds (4.2% APY)
- Real estate (7.8% APY)
- Private credit (11.5% APY)
- Infrastructure (6.4% APY)
Deployed on Mantle Testnet:
- YieldVault:
0x...(TBD) - Mock USDC:
0x...(TBD)
{
walletAddress: string,
createdAt: Date,
lastActive: Date,
totalDeposited: number,
totalWithdrawn: number,
riskProfile: 'conservative' | 'balanced' | 'aggressive'
}{
userId: ObjectId,
walletAddress: string,
assetId: string,
assetName: string,
amount: number,
shares: number,
apy: number,
riskLevel: string,
timestamp: Date,
txHash: string,
status: 'pending' | 'confirmed' | 'failed'
}{
userId: ObjectId,
walletAddress: string,
query: string,
response: string,
context: {...},
timestamp: Date,
modelUsed: string,
tokensUsed: number
}GET /api/users?walletAddress=0x...
POST /api/users
PATCH /api/users?walletAddress=0x...
GET /api/allocations?walletAddress=0x...
POST /api/allocations
PATCH /api/allocations?id=...
POST /api/ai/analyze
GET /api/ai/analyze?walletAddress=0x...
cd contracts
npx hardhat test- Connect wallet (Mantle Testnet)
- Get test USDC from faucet
- Approve USDC spending
- Allocate to RWA asset
- Check MongoDB for allocation record
- Test AI Analyst queries
- Withdraw funds
See DEPLOYMENT.md for complete step-by-step guide.
- MongoDB: Create free Atlas cluster
- Contracts:
npm run deploy:testnet - Vercel: Connect GitHub repo
- Environment: Set Vercel env vars
- Deploy: Push to main branch
Live in ~10 minutes!
- ✅ Multi-strategy yield aggregation
- ✅ ERC20 vault shares (composable)
- ✅ Performance fee mechanism
- ✅ Strategy adapter pattern
- ✅ AI-powered yield analysis
- ✅ Context-aware risk assessment
- ✅ Personalized allocation advice
- ✅ Conversation history & context
- Smart contract deployment
- Frontend MVP
- MongoDB integration
- AI analyst prototype
- Real LLM integration (Claude/GPT-4)
- Advanced yield strategies
- Portfolio rebalancing
- Mobile app (React Native)
- Smart contract audit
- Mainnet deployment
- Legal compliance
- Institutional partnerships
Contributions welcome! Please read CONTRIBUTING.md first.
- Fork the repository
- Create feature branch (
git checkout -b feature/AmazingFeature) - Commit changes (
git commit -m 'Add AmazingFeature') - Push to branch (
git push origin feature/AmazingFeature) - Open Pull Request
This project is licensed under the MIT License - see LICENSE file.
Built for Mantle Global Hackathon 2025
- Lead Developer: [Anyadike Divine]
- Smart Contracts: [Anyadike Divine]
- Design: [Anyadike Divine]
- AI Integration: [Anyadike Divine]
- Demo: https://maxion.vercel.app
- GitHub: https://github.com/Sage-senpeak/maxion-dapp
- Twitter: sage_senpeak
- Discord: nil
- Email: nil
- Mantle - For the amazing L2 infrastructure
- OpenZeppelin - For secure contract libraries
- RainbowKit - For beautiful wallet connections
- Vercel - For seamless deployment
- MongoDB - For reliable database hosting
Built with ❤️ on Mantle
⭐ Star us on GitHub if you find MAXION useful!