For learning purposes, I wanted to build a clean front-end that interacts with the solana blockchain.
This is a Next.js project bootstrapped with create-next-app
.
This is built from scratch, loosely based on the create-solana-dapp
scaffold with a bunch of added features:
- sexier ui using shadcn/ui
- data tables with pagination
- sonner toasts
- dialogs/modals
- light/dark/system mode toggle
- responsive across different screen sizes
- Event listener for changes in SOL balance
- token creation and minting
- live Chainlink price feeds
- token swap on mainnet using Jupiter Terminal
- View all
marginFi
lending pools with associated info(APY, size, utilization)
- connect to the app with their crypto wallet using solana wallet adapter
- create and mint basic
spl-token
- create and mint token(s) with meta-data using Metaplex
mpl-token-metadata
- Connect to all available Chainlink Price Feeds and view real time price updates on devnet: SOL, BTC, ETH, LINK, USDC, USDT
- Swap tokens using Jupiter Terminal V2 -
${{\color{Orangered}{\textsf{ Only works on mainnet, you need to provide your own rpc endpoint\ }}}}$ - change between different clusters: devnet, local, testnet, mainnet
- view their SOL account balance
- view their transaction history
- open transaction details in blockexplorer
- request an airdrop on devnet
- send SOL
- copy their address to clipboard to request SOL
- filter marginFi pools by token name, sort by lend/borrow APY
Clone this repo, pnpm install
dependencies, run the development server pnpm dev
Open http://localhost:3000 with your browser to see the result.