Your DeFi portfolio, intelligently managed.
Charmeey_DeFi_FullStack is a premium, production-quality DeFi portfolio management web application designed to combine the visual sophistication of private banking and modern fintech with the power and terminology of professional Web3 protocols.
Charmeey_DeFi_FullStack avoids typical Web3 tropes (excessive neon, giant logos, purple gradients, 3D coins) in favor of:
- Dark premium interface with deep charcoal/near-black backgrounds (
#0a0f18/ink-950). - Off-white typography and restrained, purposeful accent colors.
- Thin borders, soft shadows, and generous spacing.
- Institutional-grade polish suitable for a professional SaaS case study.
- Dashboard: Real-time portfolio summary ($284,920.48), 24h change, total earned, average APY, interactive portfolio performance chart (1D–All timeframes), asset allocation donut chart, active DeFi positions, and recent transaction activity.
- Portfolio: Comprehensive multi-tab asset tracker (Crypto, Stablecoins, DeFi positions) with search and filtering.
- Asset Details: Deep-dive analytics for individual tokens (price history charts, balance, average buy price, unrealized P&L, and quick actions).
- Token Swap: Polished DEX swap interface with exchange rate calculations, price impact, network fees, slippage settings, review confirmation modal, and success states.
- Staking: ETH staking hero card, active staking position, validator metrics, historical APY chart, and rewards tracking.
- Lending & Borrowing: Supply and borrow markets with utilization rates, collateral management, and health factor visualization.
- Yield Opportunities (Earn): Yield discovery across top protocols (Aave, Uniswap, Charmeey_DeFi_FullStack Vaults) with TVL and risk ratings.
- Risk Analysis: Dedicated risk scoring (28/100 Low Risk) with breakdown across market, liquidity, smart contract, and concentration risks, plus automated portfolio insights.
- Transaction History: Professional transaction log with search and multi-faceted filters (Type, Network, Status, Date).
- Wallet Connection: Multi-wallet modal (MetaMask, Coinbase Wallet, WalletConnect) plus Demo Mode for full application exploration without requiring wallet credentials.
- Settings: Account preferences, appearance themes, fiat currency selector, notification toggles, 2FA security settings, and connected wallets.
- Framework: React 18 + Vite
- Language: TypeScript (Strict mode)
- Styling: Tailwind CSS (with custom utility classes and design tokens)
- Charts: Recharts
- Icons: Lucide React
Ensure you have Node.js (v18 or higher recommended) and npm installed on your machine.
-
Install dependencies:
npm install
-
Run the development server:
npm run dev
-
Open your browser and navigate to:
http://localhost:5173
- Build for production:
npm run build
- Type check:
npm run typecheck
- Lint code:
npm run lint
Prerequisites: Node.js ≥ 20.12 and a locally running PostgreSQL 13+ (install it natively or use any managed instance — the API needs no other services).
-
Create the database role (one-time; the hyphen means the name must be quoted).
DeFi-Nexorabelow is the user, password and database name fromserver/.env:psql -U postgres -c "CREATE USER \"DeFi-Nexora\" WITH PASSWORD 'DeFi-Nexora';"Using a managed cloud Postgres (Neon, Supabase, RDS)? Skip this step — just set
DATABASE_URLandDATABASE_SSL=trueinserver/.env. -
Configure the backend:
copy server\.env.example server\.env
Make sure
server/.envhasDATABASE_URL=postgres://DeFi-Nexora:DeFi-Nexora@localhost:5432/DeFi-Nexoraand aJWT_SECRETof at least 32 characters. -
Install dependencies:
npm install npm run server:install
-
Start the backend. It auto-creates the database, runs migrations and seeds reference data on first boot:
npm run dev:server
-
Verify it's up: open
http://localhost:4000/health. -
Run the frontend (separate terminal):
npm run dev
Then open
http://localhost:5173and connect a wallet.
Manual database setup (optional — the server does this automatically): npm run db:setup runs migrations + seed; npm run db:reset drops and re-seeds. If you prefer Docker just for Postgres: npm run db:up (docker compose up -d postgres).
- Wallet discovery (EIP-6963 + legacy injected providers), connect, session restore and account/chain
handling live in
src/lib/wallet.tsandsrc/context/AppContext.tsx. - The PostgreSQL-backed API is in
server/. Copy.env.exampleto.env; leaveVITE_API_URLempty to keep running on local mock data. - WalletConnect needs a free project id in
VITE_WALLETCONNECT_PROJECT_ID.
To collaborate, contribute, or manage this repository via GitHub:
-
Clone the Repository:
git clone https://github.com/charmeey/Charmeey_DeFi_FullStack.git cd Charmeey_DeFi_FullStack -
Branching Strategy:
main: Production-ready code.- Feature branches:
feature/your-feature-nameorfix/issue-description.
-
Submitting Pull Requests:
- Push your feature branch to your fork or origin.
- Open a Pull Request against
mainwith a clear description of changes.
-
Reporting Issues:
- Use the GitHub Issues tab to report bugs, request features, or ask questions.
