A powerful Telegram bot that provides detailed token analysis using Bubblemaps, including bubble maps, token metrics, and decentralization scores. Get instant insights into any token across multiple blockchain networks.
-
🌐 Multi-chain Support
- ETH (Ethereum)
- BSC (Binance Smart Chain)
- FTM (Fantom)
- AVAX (Avalanche)
- CRO (Cronos)
- ARBI (Arbitrum)
- POLY (Polygon)
- BASE (Base)
- SOL (Solana)
- SONIC (Sonic)
-
📊 Token Analysis
- Real-time price and market data
- Market cap and volume tracking
- 24h price change monitoring
- Decentralization scoring
- Holder distribution analysis
- Interactive bubble map visualization
-
🎯 User Experience
- Interactive button navigation
- Clear, emoji-rich messages
- Graceful error handling
- Network resilience with auto-retry
- Intuitive conversation flow
- Python 3.8 or higher
- pip (Python package manager)
- A Telegram account
- Bubblemaps API Key (optional, for enhanced features)
- Open Telegram and search for @BotFather
- Start a chat with BotFather and send
/newbot - Follow the prompts:
- Set a name for your bot (e.g., "My Token Analyzer")
- Choose a username (must end in 'bot', e.g., "my_token_analyzer_bot")
- BotFather will provide a token. Save this token, you'll need it later!
Optional Bot Settings (via BotFather):
/setdescription - Set a description for your bot
/setabouttext - Set the about text
/setuserpic - Set bot profile picture
/setcommands - Set the following commands:
start - Start the bot and see welcome message
analyze - Analyze a token (e.g., /analyze 0xABC123 on ETH)
help - Show help message and examples
cancel - Cancel the current operation
-
Clone the repository:
git clone https://github.com/Pavilion-devs/bubble-telegrambot.git cd bubble-telegrambot -
Create and activate a virtual environment (recommended):
# On macOS/Linux: python -m venv venv source venv/bin/activate # On Windows: python -m venv venv .\venv\Scripts\activate
-
Install dependencies:
pip install -r requirements.txt
-
Install Playwright browsers (for screenshot functionality):
playwright install
-
Create a
.envfile in the project root:# Required TELEGRAM_BOT_TOKEN=your_bot_token_here # Optional BUBBLEMAPS_API_KEY=your_api_key_here # For enhanced features DEV_MODE=false # Set to true for development
-
Customize settings in
config.pyif needed:- Adjust screenshot dimensions
- Modify API endpoints
- Configure supported chains
- Customize message templates
python main.py/start- Begin interaction with the bot/help- Show usage instructions and examples/analyze- Start token analysis (interactive or with parameters)/cancel- Cancel current operation
-
Interactive Flow:
- Click "🔍 Analyze Token" button
- Enter token address when prompted
- Select blockchain network
- View analysis results
-
Direct Command:
/analyze <address> on <chain> Examples: /analyze 0x1f9840a85d5af5bf1d1762f925bdaddc4201f984 on ETH /analyze 0x0e09fabb73bd3ade0a17ecc321fd13a19e81ce82 on BSC
The bot provides:
- 💰 Token price and market cap
- 📈 24h volume and price change
- 🎯 Decentralization score
- 📊 Supply distribution
- 👥 Top holder analysis
- 🖼️ Interactive bubble map visualization
bubble-telegrambot/
├── main.py # Main bot file
├── config.py # Configuration settings
├── requirements.txt # Dependencies
├── .env # Environment variables
└── utils/
├── bubblemaps.py # Bubblemaps API integration
├── screenshot.py # Screenshot generation
├── token_metrics.py # Token metrics collection
└── image_helper.py # Image optimization utilities
The bot includes robust error handling:
- Network connectivity issues
- Invalid token addresses
- Unsupported chains
- API failures
- Screenshot generation errors
Each error provides user-friendly messages with clear next steps.
Start
├── Welcome Message
│ └── [Analyze Token Button]
│ └── Enter Address Prompt
│ └── Chain Selection
│ └── Analysis Result
├── Help Command
│ └── [Analyze Token Button]
└── /analyze command
├── With args -> Direct Analysis
└── Without args -> Interactive Flow
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- python-telegram-bot for the excellent Telegram bot framework
- Bubblemaps for their token analysis platform
- All contributors and users of this bot
If you encounter any issues or have questions:
- Check the Issues page
- Create a new issue with detailed information
- Email me at (olaboyefavour52@gmail.com) (if available)