Skip to content

xPOURY4/CryptoBulkSender

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

5 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸš€ CryptoBulkSender

GitHub last commit GitHub issues GitHub stars

A powerful bulk token sender for multiple blockchain networks with beautiful CLI interface! πŸ’Ž

✨ Features

  • πŸ”— Multi-Network Support: Ethereum, Polygon, BSC, Avalanche, and more
  • πŸͺ™ Any Token Type: Native tokens (ETH, MATIC, BNB) and ERC-20 tokens
  • πŸ“ Address Management: Import recipient addresses from text file
  • 🎨 Beautiful CLI: Colored output with real-time progress tracking
  • πŸ” Transaction Verification: Direct explorer links for each transaction
  • βš™οΈ Easy Configuration: Simple network setup in configuration file
  • πŸ”’ Security First: Private key stored in environment variables
  • ⏱️ Network Verification: Automatic chain ID validation
  • πŸ“Š Transaction Summary: Success/failure statistics
  • πŸ”„ Retry Mechanism: Automatic retries for failed transactions

πŸ›  Prerequisites

  • Python 3.8+
  • Node.js (for optional tools)
  • Wallet with sufficient balance on target network

πŸ“¦ Installation

1. Clone the repository

git clone https://github.com/xPOURY4/CryptoBulkSender.git
cd CryptoBulkSender

2. Create virtual environment

python -m venv venv
source venv/bin/activate  # Linux/Mac
venv\Scripts\activate     # Windows

3. Install dependencies

pip install -r requirements.txt

4. Configuration

Create .env file:

PRIVATE_KEY=your_private_key_here

Create address.txt with recipient addresses (one per line):

0x1234567890123456789012345678901234567890
0x0987654321098765432109876543210987654321
...

🎯 Usage

Run the script

python main.py

Execution flow:

  1. Network Connection: Automatic connection to configured network
  2. Address Loading: Import addresses from address.txt
  3. Amount Input: Enter token amount to send
  4. Confirmation: Review transaction summary and confirm
  5. Transaction Processing: Execute transactions with progress display
  6. Result Display: Explorer links and final statistics

Sample Output:

============================================================
  CryptoBulkSender - Holesky Testnet
============================================================
βœ“ Connected to Holesky Testnet (Chain ID: 17000)
πŸ”΅ Loaded 25 recipient addresses
πŸ’° Enter amount in ETH to send: 0.1
⚠️ Ready to send 0.1 ETH to 25 addresses
Confirm? (y/n): y

πŸ”΅ Processing transactions...
πŸ”΅ Transaction 1/25
⏳ Waiting for confirmation... (Tx: 0x7a8b9c...)
βœ… Success! Sent to 0x1234...7890
πŸ”΅ Explorer: https://holesky.etherscan.io/tx/0x7a8b9c...

============================================================
βœ… Summary: 25/25 transactions successful
============================================================

βš™οΈ Network Configuration Examples

1. Ethereum Holesky Testnet

NETWORK_CONFIG = {
    'holesky': {
        'name': 'Holesky Testnet',
        'rpc_url': 'https://rpc.ankr.com/eth_holesky',
        'chain_id': 17000,
        'explorer_url': 'https://holesky.etherscan.io',
        'currency': 'ETH',
        'decimals': 18
    }
}

2. Ethereum Mainnet

NETWORK_CONFIG = {
    'mainnet': {
        'name': 'Ethereum Mainnet',
        'rpc_url': 'https://mainnet.infura.io/v3/YOUR_PROJECT_ID',
        'chain_id': 1,
        'explorer_url': 'https://etherscan.io',
        'currency': 'ETH',
        'decimals': 18
    }
}

3. Polygon Mainnet

NETWORK_CONFIG = {
    'polygon': {
        'name': 'Polygon Mainnet',
        'rpc_url': 'https://polygon-rpc.com',
        'chain_id': 137,
        'explorer_url': 'https://polygonscan.com',
        'currency': 'MATIC',
        'decimals': 18
    }
}

4. Binance Smart Chain Mainnet

NETWORK_CONFIG = {
    'bsc': {
        'name': 'Binance Smart Chain',
        'rpc_url': 'https://bsc-dataseed.binance.org/',
        'chain_id': 56,
        'explorer_url': 'https://bscscan.com',
        'currency': 'BNB',
        'decimals': 18
    }
}

5. Avalanche Mainnet

NETWORK_CONFIG = {
    'avalanche': {
        'name': 'Avalanche Mainnet',
        'rpc_url': 'https://api.avax.network/ext/bc/C/rpc',
        'chain_id': 43114,
        'explorer_url': 'https://snowtrace.io',
        'currency': 'AVAX',
        'decimals': 18
    }
}

6. Fantom Mainnet

NETWORK_CONFIG = {
    'fantom': {
        'name': 'Fantom Mainnet',
        'rpc_url': 'https://rpc.ftm.tools',
        'chain_id': 250,
        'explorer_url': 'https://ftmscan.com',
        'currency': 'FTM',
        'decimals': 18
    }
}

7. Arbitrum One

NETWORK_CONFIG = {
    'arbitrum': {
        'name': 'Arbitrum One',
        'rpc_url': 'https://arb1.arbitrum.io/rpc',
        'chain_id': 42161,
        'explorer_url': 'https://arbiscan.io',
        'currency': 'ETH',
        'decimals': 18
    }
}

8. Optimism

NETWORK_CONFIG = {
    'optimism': {
        'name': 'Optimism',
        'rpc_url': 'https://mainnet.optimism.io',
        'chain_id': 10,
        'explorer_url': 'https://optimistic.etherscan.io',
        'currency': 'ETH',
        'decimals': 18
    }
}

9. Gnosis Chain

NETWORK_CONFIG = {
    'gnosis': {
        'name': 'Gnosis Chain',
        'rpc_url': 'https://rpc.gnosischain.com',
        'chain_id': 100,
        'explorer_url': 'https://gnosisscan.io',
        'currency': 'xDAI',
        'decimals': 18
    }
}

10. Moonbeam

NETWORK_CONFIG = {
    'moonbeam': {
        'name': 'Moonbeam',
        'rpc_url': 'https://rpc.api.moonbeam.network',
        'chain_id': 1284,
        'explorer_url': 'https://moonscan.io',
        'currency': 'GLMR',
        'decimals': 18
    }
}

To switch networks, simply change the CURRENT_NETWORK variable:

CURRENT_NETWORK = 'polygon'  # or any other network key

πŸ” Security Notes

  • πŸ”‘ Never store private keys in code - Always use environment variables
  • πŸ›‘οΈ Test on testnets first before using on mainnet
  • πŸ’Έ Verify wallet balance covers all transactions + gas fees
  • πŸ”„ Manually verify large transactions before confirmation
  • 🌐 Use reputable RPC providers for network connections

🀝 Contributing

Contributions are welcome! Please follow these steps:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

πŸ“„ License

This project is licensed under the MIT License

πŸ™ Acknowledgments

  • Web3.py for blockchain interaction
  • Colorama for colored terminal output
  • Etherscan for blockchain explorer APIs
  • All network providers for their public RPC endpoints

⭐ If this project helped you, please give it a star!
πŸ› Report bugs in Issues
πŸ’‘ Feature requests are welcome!

About

A powerful bulk token sender for multiple blockchain networks with beautiful CLI interface! πŸ’Ž

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages