Skip to content

SkyHustle/mega-solana-dapp

Repository files navigation

Mega Solana Dapp Tinkering

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)

Users are able to

  • 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

Getting Started

Clone this repo, pnpm install dependencies, run the development server pnpm dev

Open http://localhost:3000 with your browser to see the result.

App Images

mega-solana-dapp-1mega-solana-dapp-2mega-solana-dapp-3mega-solana-dapp-4mega-solana-dapp-5mega-solana-dapp-6

About

"Mega Front-End Dapp for Solana Education"

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published