A powerful threat intelligence platform for checking IP, Domain, and Hash reputation across 8 major providers.
- 🔍 Multi-Provider Support: Query 8 threat intel providers simultaneously
- 🔑 BYOK (Bring Your Own Key): API keys are stored securely in your browser (HTTP-only cookies)
- 🎯 Smart Detection: Auto-detects IPs (IPv4/IPv6), Domains, and Hashes (MD5/SHA1/SHA256)
- 🚀 Bulk Processing: Check multiple targets at once (mixed types supported)
- 💾 Intelligent Caching: 24-hour server-side caching via Cloudflare Workers KV to minimize API usage
- 🌓 Dark/Light Mode: Automatic system preference sync with manual toggle
- 📊 Analytics: Track your query volume and cache hit ratios
- 📥 Export: Download results as CSV or JSON
| Provider | IP | Domain | Hash | API Key | Free Tier |
|---|---|---|---|---|---|
| VirusTotal | ✅ | ✅ | ✅ | Required | 500/day |
| AbuseIPDB | ✅ | ❌ | ❌ | Required | 1000/day |
| AlienVault OTX | ✅ | ✅ | ✅ | Required | Unlimited |
| IPQualityScore | ✅ | ✅ | ❌ | Required | 5000/mo |
| GreyNoise | ✅ | ❌ | ❌ | Required | Community |
| URLhaus | ❌ | ✅ | ✅ | No | Unlimited |
| Shodan | ✅ | ✅ | ❌ | Required | Limited |
| Censys | ✅ | ✅ | ❌ | Required | 250/mo |
- Node.js (v16+)
- Cloudflare Account
- Wrangler CLI installed (
npm install -g wrangler)
-
Clone the repository
git clone https://github.com/yourusername/reputation-hub.git cd reputation-hub -
Install dependencies
npm install
-
Login to Cloudflare
npx wrangler login
-
Create KV Namespaces You need two KV namespaces: one for caching results and one for analytics.
# Create production namespaces npx wrangler kv namespace create CACHE npx wrangler kv namespace create ANALYTICS # Create preview namespaces (for development) npx wrangler kv namespace create CACHE --preview npx wrangler kv namespace create ANALYTICS --preview
-
Update Configuration Edit
wrangler.tomland update theidandpreview_idfields with the IDs generated in the previous step.
Run the local development server:
npm run devVisit http://localhost:8787 to see the app running.
Deploy to Cloudflare Workers:
npm run deployYour app will be live at https://reputation-hub.<your-subdomain>.workers.dev.
Click the ⚙️ API Keys button in the header. Enter your API keys for the providers you want to use. Keys are saved in your browser's cookies and are never stored on our servers.
Note: URLhaus is enabled by default and requires no API key.
- Enter an IP address, Domain, or Hash in the input field.
- Click 🔍 Check Reputation.
- View detailed results from all configured providers.
- Switch to Bulk mode.
- Enter multiple targets (one per line).
- Click 🔍 Check Reputation.
- Results will populate in a list below.
After running a check, use the 📥 Export JSON or 📊 Export CSV buttons to download your data.
- Client-Side Keys: API keys are stored in secure, HTTP-only cookies on your client. They are sent to the Worker only when making requests.
- No Persistence: We do not store your API keys in any database.
- HTTPS Enforced: All communication is encrypted via TLS.
- Local Filtering: Private IPs (e.g.,
192.168.x.x) and local domains are filtered client-side to prevent unnecessary API calls.
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the project
- 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.