-
Notifications
You must be signed in to change notification settings - Fork 19
Description
Create a comprehensive wallet page (/wallet) that extends the functionality of the wallet sheet component. This page provides users with a complete view of their abstracted wallet including balance overview, asset management, full transaction history, and the ability to off-ramp crypto earnings to fiat currency. Since wallet connection is abstracted, users don't need to manually connect—their wallet is automatically provisioned and managed by the platform.
Problem Statement
While the wallet sheet provides a quick overview, users need a dedicated page to:
- View detailed asset breakdowns and token holdings
- Access complete transaction history with filtering
- Off-ramp their crypto earnings to fiat (bank transfer, etc.)
- Manage withdrawal settings and preferences
- View pending and completed payouts
User Story
As a contributor who has earned bounty rewards, I want a dedicated wallet page where I can view all my earnings, manage my assets, and withdraw funds to my bank account so that I can access my rewards in fiat currency.
Acceptance Criteria
Page Layout & Navigation
- Create
/walletroute accessible from header and wallet sheet "View More" link - Implement responsive layout with proper mobile experience
- Add page metadata for SEO
- Include breadcrumb navigation
- Match existing app design language (dark theme, ambient glow)
Wallet Overview Section
- Display user's abstracted wallet address (truncated with copy)
- Show "Abstracted Wallet" indicator explaining no connection needed
- Display wallet creation date
- Show verification/security status
Balance Card Section
- Large balance display with total USD value
- Show balance breakdown by currency/token
- Display pending earnings (awaiting confirmation)
- Show available for withdrawal amount
- Include 24h/7d/30d balance change indicators
Assets Section (Extended)
- Full list of all token holdings
- Each asset displays: icon, name, symbol, amount, USD value, % of portfolio
- Sort options: value, name, recent
- Search/filter assets
- Empty state for new users
- Click asset to view token-specific transactions
Activity/Transaction History Section (Extended)
- Complete paginated transaction history
- Filter by type: All, Earnings, Withdrawals, Pending
- Filter by date range
- Search transactions
- Each transaction shows: type icon, description, amount, date, status, bounty link
- Transaction detail modal/expansion
- Export transaction history (CSV)
Off-Ramp / Withdrawal Section
- "Withdraw to Bank" primary action button
- Display connected bank accounts / payment methods
- Add new bank account / payment method flow
- Withdrawal amount input with max button
- Show withdrawal fees and estimated receive amount
- Withdrawal confirmation modal
- Pending withdrawals list with status tracking
- Withdrawal limits display (daily/monthly)
Security Section
- Two-factor authentication status and setup
- Withdrawal whitelist settings
- Recent security activity log
- Session management
- Technical Requirements
Edge Cases
- User has no bank accounts (show add account prompt)
- Withdrawal amount exceeds available balance
- Withdrawal amount below minimum
- Daily/monthly limit reached
- Bank account verification pending
- Two-factor authentication required for withdrawal
- Withdrawal processing failure
- Network error during submission
- Empty transaction history
- Empty asset list
- Very long transaction history (pagination)