Open-source Roblox username availability checker with CLI & Web Interface
DuckSnipe is a powerful tool for checking Roblox username availability. It offers both a command-line interface for power users and a modern web interface for visual interaction. Built with async operations and smart rate limiting to ensure fast, reliable results while respecting API limits.
Key Capabilities:
- Concurrent username checking with configurable rate limiting
- Multiple generation methods: wordlist combinations, random letters, number patterns
- Dual interface: CLI for speed, Web for visualization
- Comprehensive logging and result tracking
- Real-time statistics dashboard
- JSON export functionality
Automated Setup (Windows)
git clone https://github.com/daredjumper/ducksnipe.git
cd ducksnipe
install.batThe installer will automatically:
- Create virtual environment
- Install all dependencies (aiohttp, colorama, Flask)
- Set up required folders and files
Manual Setup
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install aiohttp colorama flaskInteractive Launcher
start.batSelect your preferred mode:
- [1] CLI Mode - Traditional command-line interface
- [2] Web Interface - Browser-based GUI at localhost:8080
- [3] Dual Mode - Run both simultaneously
Direct Launch
python ducksnipe.py # CLI
python web_server.py # Web interfaceUsername Generation
- GenKey: Combine custom keys with predefined wordlists (270+ words)
- Letter Generator: Random letter-based usernames with customizable parameters
- Number Generator: Pure numbers, prefix/suffix combinations, or sequential ranges
Checking & Validation
- Async concurrent checking for maximum speed
- Configurable rate limiting to prevent API bans
- Automatic detection of rate limit responses (429/403)
- Color-coded status output for quick scanning
Data Management
- Automatic saving of available usernames with timestamps
- Account credential storage
- Custom wordlist support
- Comprehensive logging system
- JSON export capability
Command-Line Interface
- Fast command execution
- Full feature access via text commands
- Ideal for automation and power users
- Persistent settings across sessions
Web Interface
- Modern, responsive design
- Live statistics dashboard
- Interactive generators with real-time feedback
- Visual result display
- One-click JSON export
- Auto-refreshing stats every 5 seconds
Generation
genkey [type] [key] # Generate combinations from wordlist
letter_gen # Interactive random letter generator
genum # Interactive number generator
check [username...] # Check specific usernamesData Management
available # View available usernames
storage # View saved accounts
addword [word] # Add to custom wordlist
pass [username] # Generate password
addacc [user] [pass] # Save account credentials
clear # Clear in-memory resultsConfiguration
settings # View/modify settings
web # Launch web interface
help # Detailed help
cmds # Command listNavigate to http://localhost:8080 after starting the web server.
Quick Check Tab Enter usernames line-by-line to check availability instantly.
Generator Tabs
- GenKey: Select wordlist type and key value
- Letters: Configure length, count, and number inclusion
- Numbers: Choose from pure numbers, prefix/suffix combos, or sequential ranges
Results Panel View all available usernames with timestamps, refresh manually, or export to JSON.
# Start dual mode
start.bat → [3]
# Generate via CLI
=> genkey wordlist Shadow
# Monitor via Web
# Results appear in real-time on dashboard
# Export findings
# Click "Export JSON" in web interface
# Save credentials
=> pass ShadowKing
=> addacc ShadowKing GeneratedPassword123Access via CLI settings command or Web interface.
Max Concurrent Requests (Default: 10)
- Simultaneous API requests
- Lower = safer, higher = faster
- Range: 1-100
- Recommended: 5-10 for safe operation
Request Delay (Default: 0.3s)
- Pause between request batches
- Higher = safer, lower = faster
- Range: 0-10 seconds
- Recommended: 0.3-0.5 for safe operation
All paths are configurable:
- Log Folder:
DuckSnipeLogs - Users File:
users.txt - Words File:
words.txt - Available File:
available_usernames.txt
Settings persist to settings.json automatically.
wordlist - 270+ common words and gaming terms
studio - Roblox Studio terminology and API references
minerals - Mineral, element, and gem names
custom - Your personal wordlist (add via addword)
great - Premium Roblox-related words
jobs - Professions and occupations
Four generation modes:
Pure Numbers Generate random numbers with specified digit length (1-10). Example: 12345, 98765
Prefix + Numbers Add text before numbers, validates total length. Example: User12345, Pro98765
Numbers + Suffix Add text after numbers, validates total length. Example: 12345Pro, 98765Epic
Sequential Range Generate consecutive numbers within range. Example: 10000-11000
RESTful API available at http://localhost:8080/api:
| Endpoint | Method | Description |
|---|---|---|
/api/stats |
GET | Current statistics |
/api/available |
GET | Available usernames list |
/api/check |
POST | Check usernames |
/api/genkey |
POST | Generate with wordlists |
/api/letter_gen |
POST | Generate letter usernames |
/api/genum |
POST | Generate number usernames |
/api/settings |
GET/POST | View/modify settings |
/api/clear_snipes |
POST | Clear in-memory list |
/api/export_available |
GET | Export as JSON |
ducksnipe/
├── ducksnipe.py Main CLI application
├── web_server.py Web interface server
├── config.py Configuration and wordlists
├── api.py Async API handling
├── commands.py Command implementations
├── utils.py Utility functions
├── install.bat Windows installer
├── start.bat Interactive launcher
├── templates/
│ └── index.html Web UI
├── settings.json Persisted settings
├── words.txt Custom wordlist
├── users.txt Saved accounts
├── available_usernames.txt Found usernames
└── DuckSnipeLogs/ Operation logs
Safe defaults prevent API throttling:
- 10 concurrent requests
- 0.3 second delay between batches
- Automatic rate limit detection
- Wait 5-10 minutes before retrying
- Reduce concurrent requests to 5
- Increase delay to 0.5 or 1.0 seconds
- Check
DuckSnipeLogs/rate_limit_alerts.txt
- Begin with default settings
- Increase speed only if no throttling occurs
- Monitor rate limit logs regularly
- Batch large operations into smaller groups
- Use lower settings for mass checking (1000+ usernames)
Flask Import Error
pip install flaskTemplates Not Found
Ensure templates/index.html exists in correct location.
Port Conflict
Edit web_server.py to change port:
run_server(host='127.0.0.1', port=8081)Rate Limiting (429/403) Lower concurrent requests and increase delay via settings menu.
Import Errors
pip install aiohttp colorama flaskPermission Errors Check write permissions for DuckSnipeLogs folder.
Python Not Found Install Python 3.8+ from python.org with "Add to PATH" enabled.
Virtual Environment Issues
python -m venv venv --clearRunning CLI and Web simultaneously provides optimal workflow:
- Execute commands quickly via CLI
- Monitor results visually via Web
- Shared data between interfaces
- Independent operation of each interface
Launch via start.bat → [3] or manually:
# Terminal 1
python web_server.py
# Terminal 2
python ducksnipe.pyModify web_server.py:
def run_server(host='127.0.0.1', port=8080):Change port value to desired port number.
Default configuration restricts access to localhost. To enable network access:
run_server(host='0.0.0.0', port=8080)Warning: This exposes the interface to your network.
- Python 3.8+
- aiohttp 3.8.0+
- colorama 0.4.6+
- Flask 2.3.0+
git clone https://github.com/daredjumper/ducksnipe.git
cd ducksnipe
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install aiohttp colorama flask- Fork the repository
- Create feature branch
- Implement changes
- Test both CLI and Web interfaces
- Submit pull request
Educational purposes only.
- Uses public Roblox API for username validation
- Username sniping may violate Roblox Terms of Service
- Automated account creation is not supported and violates TOS
- Respect rate limits to avoid IP restrictions
- Use responsibly and ethically
- Developers assume no liability for misuse
Finding available usernames: Educational use
Automated account creation: Prohibited
MIT License - See LICENSE for details
Report Bug • Request Feature • Discussions
Version 1.0.9
- Added Flask-based web interface
- Added number generator (genum command)
- Added interactive launcher (start.bat)
- Added REST API endpoints
- Added JSON export functionality
- Added live statistics dashboard
- Updated installer for Flask support
- Improved error handling and logging
- Enhanced documentation
Made by the community for the community