An educational browser extension that automatically detects Web3 jargon on any webpage, provides context-aware explanations, and helps you learn through a gamified PokΓ©dex-style collection system.
β Status: PokΓ©dex v0.2.0 Complete! Full context-aware glossary with Shadow Mode and collection tracking.
- π Smart Term Detection - Detects 20+ Web3/AI terms on any webpage using NLP
- π Shadow Mode - Toggle term highlighting on/off with floating indicator
- π Context-Aware Definitions - Different definitions based on page context (DeFi, L2, ERC-4337, etc.)
- π Smart Popovers - Hover for quick definitions, click for full explanations + sources
- π― Interactive Quizzes - Test your knowledge and earn XP for correct answers
- π PokΓ©dex View - Browse all terms in a card-based collection
- π Term Unlocking - Terms unlock as you encounter them on webpages
- π Quiz Tracking - See which terms you've mastered with quizzes
- π Progress Tracking - Visual progress bar and statistics by category
- π Smart Filters - Filter by status (locked/unlocked), category, or search
- π Learning Dashboard - Track your XP, streak, and accuracy
- π Statistics - View unique terms seen, quizzes taken, and more
- πΎ Export Data - Download your learning history as JSON or Markdown
- π Badge Counter - Shows unique terms learned today
- Node.js 18+ and npm
- Chrome, Brave, or any Chromium-based browser
-
Clone the repository
git clone <repository-url> cd fluent
-
Install dependencies
# Using pnpm (recommended) pnpm install # Or using npm npm install # Or using yarn yarn install
-
Build the extension
For development (with hot reload):
npm run dev
For production:
npm run build
-
Load extension in Chrome/Brave
- Open your browser and navigate to
chrome://extensions/ - Enable "Developer mode" (toggle in top-right corner)
- Click "Load unpacked"
- Select the
.output/chrome-mv3directory from the project folder - The Fluent extension should now appear in your extensions list!
- Open your browser and navigate to
npm run dev:firefoxThen load from .output/firefox-mv3 directory.
- Toggle Highlighting - Click the Shadow Mode toggle (ποΈ/π) in the popup header
- Webpage Indicator - See the floating indicator showing current mode status
- On-Demand Scanning - Enable only when you want to learn, disable for distraction-free browsing
- Persistent - Your preference is saved across sessions
- Browse any webpage - When Shadow Mode is ON, the extension automatically scans for terms
- Hover over highlighted terms - See a quick definition preview
- Click a term - Open full popover with:
- Context-aware definition (adapts to DeFi, L2, ERC-4337, etc.)
- Example usage in the detected context
- Interactive quiz question
- Source attribution
- Answer the quiz - Earn 10 XP for correct answers and mark the term as mastered
- Track your progress - Click the extension icon to see your dashboard
- Browse the Collection - Click the "PokΓ©dex" tab in the popup
- View All Terms - See all available terms in a card-based grid
- Filter & Search - Use filters to find terms by:
- Status (All, Unlocked, Locked, Quiz Completed)
- Category (Infrastructure, DeFi, Development, NFT, etc.)
- Search query
- Track Progress - View overall completion percentage and category statistics
- Unlock Terms - Terms unlock automatically when you encounter them on webpages
- XP & Streak - Monitor your learning progress
- Terms Today - See how many unique terms you've encountered
- Learning History - Review all terms you've learned, organized by date
- Export Options - Download your learning data as JSON or Markdown
- Tab Navigation - Switch between Dashboard and PokΓ©dex views
The extension detects the context of the page you're viewing and shows the most relevant definition:
- DeFi contexts: Uniswap, Aave, lending protocols
- L2 contexts: Arbitrum, Optimism, zkSync
- ERC-4337 contexts: Account abstraction, bundlers, paymasters
- General contexts: Fallback for non-specific pages
The extension icon badge shows the number of unique terms you've learned today. It resets every day to encourage daily learning!
- Open the test page - After loading the extension, open
test.html(included in the project) in your browser - Look for highlighted terms - Terms like "blockchain", "smart contract", "DeFi" will be underlined
- Hover for preview - Hover over any highlighted term to see a quick definition
- Click for quiz - Click a term to see full explanation and take an interactive quiz
- Check your progress - Click the extension icon to see your dashboard with XP and streak
Visit Web3-related websites to see Fluent in action:
- ethereum.org - Ethereum's official site
- uniswap.org - DeFi exchange
- opensea.io - NFT marketplace
- Any crypto news site or Web3 documentation
- WXT 0.18.x - Modern web extension framework (Manifest V3)
- React 18 - UI components for popup and popovers
- TypeScript 5 - Type-safe code
- compromise.js - Natural language processing for term detection
- Chrome Storage API - Persistent data storage
- CSS - Clean, minimal styling
Note: We use WXT 0.18.x instead of the latest version to avoid workspace dependency issues.
fluent/
βββ components/ # Shared React components
β βββ Popover.tsx # Popover component for term explanations
β βββ Popover.css # Popover styles
βββ entrypoints/ # Extension entry points
β βββ background.ts # Background service worker
β βββ content/ # Content script
β β βββ index.tsx # Term detection and highlighting
β β βββ content.css # Content script styles
β βββ popup/ # Extension popup
β βββ App.tsx # Main dashboard component
β βββ App.css # Dashboard styles
β βββ index.html # Popup HTML
β βββ main.tsx # Popup entry point
βββ utils/ # Utility functions
β βββ logger.ts # Logging utilities
β βββ stats.ts # Statistics calculation
βββ public/ # Static assets
β βββ icon.svg # Extension icon
β βββ icon/ # Icon variants
β βββ glossary.json # Web3 terms database
βββ wxt.config.ts # WXT configuration
βββ package.json # Dependencies
βββ tsconfig.json # TypeScript config
The extension currently recognizes 22 Web3 and AI terms with context-aware definitions:
- Blockchain
- Consensus
- Mining
- Staking
- Gas Fee
- Wallet
- MetaMask
- Oracle
- Relayer
- Smart Contract
- dApp
- Solidity
- ERC-20
- Account Abstraction
- DeFi
- Yield Farming
- Liquidity Pool
- NFT
- DAO
- Layer 2
- Token
- Web3
Note: Working towards 50+ terms. See
public/glossary-template.mdfor guidelines on adding new terms.
# Development (with hot reload)
pnpm run dev # Chrome/Brave
pnpm run dev:firefox # Firefox
# Production build
pnpm run build # Chrome/Brave
pnpm run build:firefox # Firefox
# Create distribution packages
pnpm run zip # Chrome/Brave
pnpm run zip:firefox # Firefox
# Generate types
pnpm run prepare # Run after adding new filesReplace pnpm with npm or yarn if you're using those instead.
See public/glossary-template.md for comprehensive guidelines. Quick reference:
Context-Aware Format (Recommended):
{
"term": "Your Term",
"definitions": {
"Context1": "Definition for this context",
"General": "Fallback definition"
},
"examples": {
"Context1": "Example in context",
"General": "General example"
},
"sources": ["source1.com", "source2.org"],
"category": "Category",
"quiz": { /* quiz object */ }
}Legacy Format (Still Supported):
{
"term": "Your Term",
"definition": "Single definition",
"usage": "Example sentence",
"category": "Category",
"quiz": { /* quiz object */ }
}Supported Contexts: General, ERC-4337, DeFi, NFT, L2, DAO, Infrastructure, Development, Security, AI
Categories: Infrastructure, Development, DeFi, NFT, DAO, L2, Security, AI, General
- Highlight color: Edit
.fluent-highlightinentrypoints/content/content.css - Popover design: Modify
components/Popover.css - Dashboard theme: Update
entrypoints/popup/App.css
- Shadow Mode toggle with webpage indicator
- Context-aware definitions (9 contexts)
- PokΓ©dex collection view
- Term unlock tracking
- Quiz completion badges
- Category-based organization
- Filter and search functionality
- Source attribution
- Progress statistics
- Expand glossary to 50+ terms
- Add 30+ high-quality Web3/AI terms
- More granular contexts (zkProofs, MEV, Consensus types)
- AI/ML terms (Transformer, LLM, RAG, Vector DB, etc.)
- Performance optimizations for 50+ terms
- XP for unlocking terms (not just quizzes)
- Category completion badges
- Streak bonuses for daily discoveries
- Custom glossaries (user-submitted terms)
- Spaced repetition system
- Social features (share PokΓ©dex, compete)
- AI-powered context detection
- Multi-language support
- Mobile browser support
- Check Shadow Mode: Make sure Shadow Mode is enabled (ποΈ) in the popup
- Look for the floating indicator at bottom-right of page
- Verify the page has finished loading
- Check the browser console for errors (F12)
- Try refreshing the page
- Make sure you've loaded the extension properly
- Enable Shadow Mode if it's disabled
- Check the browser console for errors (F12)
- Verify the page has finished loading
- Try refreshing the page
- Check if the term is in the glossary
- Ensure JavaScript is enabled
- Look for console errors
- Try clicking the term instead of hovering
- The badge updates based on storage changes
- Wait a few seconds after interacting with terms
- Check if the extension has storage permissions
MIT License - feel free to use this project for learning and development!
This is an MVP for educational purposes. Contributions, suggestions, and feedback are welcome!
If you encounter any issues or have questions:
- Check the troubleshooting section
- Review the browser console for errors
- Open an issue on GitHub
Happy Learning! π
Build your Web3 knowledge one term at a time with Fluent.