๐Ÿš€ BitDrop

๐Ÿ’ก Inspiration

In the growing world of decentralized finance and content monetization, creators often struggle to accept Bitcoin donations easilyโ€”especially in a secure, trackable, and user-friendly way. We wanted to build a seamless experience where anyone could start accepting Bitcoin donations with zero setup, full transparency, and real-time tracking. Thus, BitDrop was born.


๐Ÿง  What it does

BitDrop is a secure, full-stack Bitcoin donation platform that:

  • Generates unique Bitcoin Testnet addresses on demand
  • Displays a QR code for easy donations
  • Tracks the walletโ€™s balance and recent transactions
  • Provides a sleek and simple Chrome Extension interface
  • Runs a Flask backend that manages wallets and handles all logic via RESTful APIs

This makes it ideal for creators, nonprofits, and developers looking to prototype decentralized tipping flows.


๐Ÿ›  How we built it

  • Backend: Built a Flask-based API using the bit library to:

    • Generate Bitcoin Testnet private keys and addresses
    • Track balances and transactions
    • Expose endpoints for the extension to interact with
  • Frontend (Chrome Extension):

    • Popup HTML + JS interface to:
    • Generate new donation addresses
    • Show live QR codes
    • Fetch wallet balance & display recent transactions
    • Styled using vanilla CSS for a clean, responsive feel
  • Tech Stack:

    • Flask + Python
    • Bit Library (Bitcoin Testnet)
    • HTML/CSS/JavaScript
    • Chrome Extension APIs

๐Ÿงฑ Challenges we ran into

  • API rate limiting from testnet blockchain explorers slowed down transaction fetching
  • Properly syncing wallet state and ensuring valid WIF-address mappings
  • Handling QR code generation in a lightweight way without bloating the extension
  • Making the extension and backend work seamlessly across different ports and local environments

๐Ÿ† Accomplishments that we're proud of

  • Fully working Chrome Extension that interacts with a real Bitcoin Testnet wallet
  • End-to-end donation lifecycle: from generating an address to receiving test BTC and showing it in the UI
  • Designed an intuitive, polished interface with real-time updates
  • Made the entire project modular, reusable, and GitHub-ready

๐Ÿ“š What we learned

  • Deep understanding of Bitcoin wallets, WIFs, and Testnet mechanics
  • How to create and style browser extensions using Manifest V3
  • Interfacing frontend extensions with Python Flask APIs
  • Best practices in separating logic across frontend/backend and handling async behavior

๐Ÿ”ฎ What's next for BitDrop

  • ๐Ÿ” Add Taproot & Lightning Network support
  • ๐ŸŒ Deploy the Flask API publicly using a service like Render or Railway
  • ๐Ÿ“ฆ Release the extension on the Chrome Web Store
  • ๐ŸŽจ Add user authentication and wallet management UI
  • ๐Ÿ“ˆ Build a dashboard with analytics and multi-currency support

Made with ๐Ÿ’› at [MIT Bitcoin Expo Hackathon 2025]

Share this project:

Updates