Skip to content

hashemabad/crypto-price-ticker

Repository files navigation

🚀 Crypto Price Ticker - Chrome Extension

A modern, feature-rich Chrome extension that displays real-time cryptocurrency prices with a beautiful, responsive UI.

✨ Features

🎯 Core Functionality

  • Real-time Price Updates: Fetches prices every 30 seconds from CoinGecko API
  • Fallback Support: Automatic fallback to Binance API if CoinGecko fails
  • 25+ Cryptocurrencies: Support for top market cap coins including Bitcoin, Ethereum, BNB, Solana, Cardano, and more
  • 60+ Fiat Currencies & Units: Comprehensive support for global currencies, crypto units, and commodities
  • USDT Support: View prices in Tether (USDT) for easy crypto-to-crypto comparisons

🎨 Modern UI/UX

  • Minimalist Design: Clean, modern interface with smooth animations
  • Responsive Layout: Adapts to different screen sizes
  • Dark Mode Support: Automatically adapts to system preferences
  • Official Cryptocurrency Icons: High-quality PNG icons for all supported coins
  • Smooth Animations: Staggered loading animations for price items

🔧 Advanced Features

  • Configurable Badge: Choose which cryptocurrency to display in the extension badge
  • Auto-refresh: Automatic price updates every 30 seconds
  • New Tab Mode: Open the ticker in a dedicated tab for better visibility
  • Error Handling: Graceful fallbacks and user-friendly error messages
  • Caching System: Smart caching to reduce API calls and improve performance

🌐 API Integration

  • Primary: CoinGecko Public API
  • Fallback: Binance Public API
  • Rate Limiting: Built-in protection against API rate limits
  • Offline Support: Graceful handling of network issues

🚀 New Tab Feature

One of the standout features is the ability to open the crypto ticker in a dedicated tab:

  • Larger Display: Full tab space for better visibility
  • Responsive Layout: Prices display in a responsive layout
  • Independent Operation: Works independently from the popup
  • Easy Access: Quick access button in the popup controls
  • Professional Look: Perfect for traders and crypto enthusiasts

📱 Supported Cryptocurrencies

🥇 Top Market Cap Coins

  1. Bitcoin (BTC) - ₿ - The original cryptocurrency
  2. Ethereum (ETH) - Ξ - Smart contract platform
  3. Tether (USDT) - ₮ - Stablecoin pegged to USD
  4. BNB (BNB) - BNB - Binance ecosystem token
  5. Solana (SOL) - ◎ - High-performance blockchain
  6. Cardano (ADA) - ₳ - Proof-of-stake blockchain
  7. Avalanche (AVAX) - AVAX - Layer 1 blockchain
  8. Dogecoin (DOGE) - Ð - Meme cryptocurrency
  9. Polkadot (DOT) - DOT - Multi-chain network
  10. Polygon (MATIC) - MATIC - Ethereum scaling solution

🔗 DeFi & Infrastructure

  1. Chainlink (LINK) - LINK - Oracle network
  2. Uniswap (UNI) - UNI - Decentralized exchange
  3. Litecoin (LTC) - Ł - Bitcoin fork
  4. Bitcoin Cash (BCH) - BCH - Bitcoin scaling solution
  5. Stellar (XLM) - XLM - Cross-border payments
  6. Cosmos (ATOM) - ATOM - Interoperable blockchain
  7. Monero (XMR) - XMR - Privacy-focused cryptocurrency
  8. Algorand (ALGO) - ALGO - Pure proof-of-stake
  9. VeChain (VET) - VET - Supply chain blockchain
  10. Filecoin (FIL) - FIL - Decentralized storage
  11. Tezos (XTZ) - XTZ - Self-amending blockchain
  12. TRON (TRX) - TRX - Content sharing platform
  13. EOS (EOS) - EOS - Scalable blockchain platform
  14. XRP (XRP) - XRP - Ripple payment protocol
  15. Yearn Finance (YFI) - YFI - DeFi yield aggregator

💱 Supported Fiat Currencies & Units

🌍 Major Global Currencies

  • USD ($) - US Dollar
  • EUR (€) - Euro
  • GBP (£) - British Pound Sterling
  • JPY (¥) - Japanese Yen
  • CNY (¥) - Chinese Yuan
  • KRW (₩) - South Korean Won
  • RUB (₽) - Russian Ruble
  • INR (₹) - Indian Rupee
  • BRL (R$) - Brazilian Real
  • CAD (C$) - Canadian Dollar

🌏 Regional Currencies

  • AUD (A$) - Australian Dollar
  • CHF (CHF) - Swiss Franc
  • SEK (kr) - Swedish Krona
  • NOK (kr) - Norwegian Krone
  • DKK (kr) - Danish Krone
  • PLN (zł) - Polish Zloty
  • CZK (Kč) - Czech Koruna
  • HUF (Ft) - Hungarian Forint
  • TRY (₺) - Turkish Lira
  • ZAR (R) - South African Rand

🏦 Middle East & Asia

  • AED (د.إ) - UAE Dirham
  • SAR (ر.س) - Saudi Riyal
  • KWD (د.ك) - Kuwaiti Dinar
  • BHD (ب.د) - Bahraini Dinar
  • QAR (ر.ق) - Qatari Riyal
  • IDR (Rp) - Indonesian Rupiah
  • TWD (NT$) - New Taiwan Dollar
  • SGD (S$) - Singapore Dollar
  • HKD (HK$) - Hong Kong Dollar
  • THB (฿) - Thai Baht

🌎 Americas & Africa

  • ARS ($) - Argentine Peso
  • CLP ($) - Chilean Peso
  • MXN ($) - Mexican Peso
  • PEN (S/) - Peruvian Sol
  • COP ($) - Colombian Peso
  • NGN (₦) - Nigerian Naira
  • EGP (E£) - Egyptian Pound
  • KES (KSh) - Kenyan Shilling
  • GHS (GH₵) - Ghanaian Cedi
  • MAD (د.م.) - Moroccan Dirham

🏛️ Special Drawing Rights & Commodities

  • XDR (SDR) - IMF Special Drawing Rights
  • XAG (XAG) - Silver (Troy Ounce)
  • XAU (XAU) - Gold (Troy Ounce)

🪙 Cryptocurrency Units

  • BTC (₿) - Bitcoin (1 BTC = 1)
  • ETH (Ξ) - Ethereum (1 ETH = 1)
  • LTC (Ł) - Litecoin (1 LTC = 1)
  • BCH (BCH) - Bitcoin Cash (1 BCH = 1)
  • BNB (BNB) - Binance Coin (1 BNB = 1)
  • EOS (EOS) - EOS (1 EOS = 1)
  • XRP (XRP) - XRP (1 XRP = 1)
  • XLM (XLM) - Stellar Lumens (1 XLM = 1)
  • LINK (LINK) - Chainlink (1 LINK = 1)
  • DOT (DOT) - Polkadot (1 DOT = 1)
  • YFI (YFI) - Yearn Finance (1 YFI = 1)
  • SOL (SOL) - Solana (1 SOL = 1)
  • BITS (bits) - Bitcoin Bits (1 BTC = 1,000,000 bits)
  • SATS (sats) - Bitcoin Satoshis (1 BTC = 100,000,000 sats)

💎 Stablecoins

  • USDT (₮) - Tether (1 USDT = 1 USD)

🛠️ Technical Details

Architecture

  • Manifest V3: Latest Chrome extension manifest version
  • Service Worker: Background script for API calls and scheduling
  • ES6+ Features: Modern JavaScript with async/await
  • Chrome APIs: Uses alarms, storage, and action APIs

Performance

  • Smart Caching: 20-second cache for API responses
  • Efficient Updates: Only updates when necessary
  • Memory Management: Optimized for long-running operation
  • Error Recovery: Automatic retry mechanisms

📦 Installation

For Users

  1. Download the extension files
  2. Open Chrome and go to chrome://extensions/
  3. Enable "Developer mode"
  4. Click "Load unpacked" and select the extension folder
  5. The extension will appear in your toolbar

For Developers

  1. Clone the repository
  2. Install dependencies (if any)
  3. Make your modifications
  4. Load as unpacked extension in Chrome

🔧 Development

Project Structure

crypto-price-ticker/
├── manifest.json          # Extension configuration
├── background.js          # Service worker
├── popup.html            # Main popup interface
├── popup.js              # Popup logic
├── window.html           # Dedicated tab interface
├── styles.css            # Main stylesheet
├── icons/                # Extension & cryptocurrency icons
├── LICENSE               # MIT License
├── README.md             # This file
├── PRIVACY_POLICY.md     # Privacy policy
└── TERMS_OF_SERVICE.md   # Terms of service

Key Functions

  • fetchPrices(): Main API fetching logic
  • updateBadge(): Updates extension badge
  • withCache(): Caching utility
  • openInNewTab(): Opens dedicated tab

🧪 Testing

Debug Tools

  • Console Logging: Detailed error and status logging
  • Error Handling: Comprehensive error management
  • API Fallback: Automatic fallback testing

API Testing

  • Test CoinGecko connectivity
  • Test Binance fallback
  • Verify rate limiting handling
  • Check error recovery

🚀 Publishing to Chrome Web Store

Requirements

  • Valid developer account
  • Privacy policy
  • Terms of service
  • Screenshots and descriptions
  • Compliance with Chrome Web Store policies

Steps

  1. Package the extension
  2. Create store listing
  3. Submit for review
  4. Wait for approval

🤝 Contributing

Contributions are welcome! Please feel free to submit pull requests or open issues for bugs and feature requests.

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

👨‍💻 Author

Mohammad Nasser Haji hashemabad (Nasser Hashemabadi)

Blockchain Tools & Smart Contracts Developer
Technologist and researcher with a focus on blockchain, data science, and digital innovation.

🔗 Links

📈 Changelog

Version 1.0.0

  • ✅ Initial release with comprehensive functionality
  • ✅ Support for 25+ cryptocurrencies with official icons
  • ✅ Support for 60+ fiat currencies, crypto units, and commodities
  • ✅ Modern, responsive UI design with dark mode
  • ✅ New tab feature for enhanced viewing
  • ✅ Comprehensive error handling and fallback systems
  • ✅ Smart caching system for optimal performance
  • ✅ Official cryptocurrency icons integration
  • ✅ Privacy policy and terms of service
  • ✅ Professional documentation and licensing

Made with ❤️ for the crypto community

About

A modern, feature-rich Chrome extension that displays real-time cryptocurrency prices with a beautiful, responsive UI.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors