A Chrome browser extension for interacting with the Solana blockchain. It allows users to create, import (partially implemented), and manage Solana wallets directly within their browser popup. This project demonstrates key Solana functionalities like keypair generation (random and deterministic), transaction signing for transfers, viewing account activity, and interacting with the Devnet.
-
Install dependencies:
npm install # or yarn install -
Environment Variables:
- The application uses
process.env.NEXT_PUBLIC_SOLANA_RPC_HOSTto connect to the Solana network. If not set, it defaults to the public Solana Devnet RPC (https://api.devnet.solana.com). - For better performance and reliability, consider setting this variable to a dedicated RPC endpoint (e.g., from Helius, QuickNode, Alchemy, or your own node). Create a
.env.localfile in the root directory:
NEXT_PUBLIC_SOLANA_RPC_HOST=https://api.devnet.solana.com # Or replace with your dedicated RPC URL - The application uses
-
Build the extension:
- You need to build the Next.js application and export it as static files suitable for a Chrome extension. Check your
package.jsonfor the specific scripts, but they are typically:
yarn build
- You need to build the Next.js application and export it as static files suitable for a Chrome extension. Check your
-
Load the extension in Chrome:
- Open Chrome and navigate to
chrome://extensions/ - Enable "Developer mode" (usually a toggle in the top right)
- Click "Load unpacked"
- Select the
outdirectory generated in the previous step - The extension icon should appear in your browser toolbar. Ensure your
manifest.jsonis configured correctly to usepopup.html(or the equivalent exported file) for the browser action
- Open Chrome and navigate to
- The application is configured to interact with the Solana Devnet by default
- Funding for new wallets is provided via an integrated call to a Devnet faucet function (
fundWallet). Faucet requests may be rate-limited by the RPC provider - Ensure you have a stable RPC connection for reliable transaction fetching and submission. Public RPC endpoints (like the default
api.devnet.solana.com) have strict rate limits, which can cause errors during heavy use (like fetching many transaction details). Consider using a dedicated RPC provider for development
- 🎮 I built this web3 project live on Twitch
- 📝 I publish articles weekly relating to CS topics on LinkedIn
- 🎬 I publish videos weekly relating to CS topics on YouTube
- Twitch: https://www.twitch.tv/krystal_mess323
- Twitter: https://x.com/MikeS47896459
- YouTube: https://www.youtube.com/@krystal_mess323