Copy. Deploy. Done. No experience needed. Every SpunkArt tool deploys the exact same way.
These 3 steps only need to happen once. After this, deploying any tool takes 30 seconds.
Cloudflare Workers run your code on 300+ data centers worldwide. The free plan includes 100,000 requests per day -- more than enough for most tools.
A Cloudflare dashboard with your account. You don't need to add a domain -- Workers work on their own subdomain (yourname.workers.dev) automatically.
Wrangler is Cloudflare's command-line tool. It deploys your Workers with one command. You need Node.js installed first.
npm install -g wrangler
This connects your terminal to your Cloudflare account. You only need to do this once.
wrangler login
Your browser opens automatically. Click "Allow" on the Cloudflare page. Done.
Every SpunkArt tool follows the exact same 3-step pattern. Once you've done the setup above, this is all you need.
Save the .js file you received to a new folder
Copy the included wrangler.toml file to the same folder
Run wrangler deploy and you're live
Create a folder for the tool and save the .js file you received into it.
mkdir bot-blockercd bot-blockerEvery tool comes with a wrangler.toml config file. Save it in the same folder as the .js file. Here's what a typical one looks like:
name = "bot-blocker"main = "bot-blocker.js"compatibility_date = "2024-01-01"
One command. Your tool is live worldwide in under 10 seconds.
wrangler deploy
That URL is your tool, live on Cloudflare's global network. Click it to verify it works.
Most tools deploy with zero extra configuration. Some need a quick additional step. Click your tool below.
Edit the CONFIG section at the top of the file to customize your blocked user-agents, rate limits, and honeypot paths.
const BLOCKED_AGENTS = ["AhrefsBot", "SemrushBot", "MJ12bot"];const RATE_LIMIT = 100; // requests per minute
Add your site URLs to the SITES array in the config section. The monitor checks each site on a schedule using Cron Triggers.
const SITES = [Add this to your wrangler.toml for scheduled checks:
[triggers]crons = ["*/5 * * * *"] # every 5 minutes
After deploying, add the tracking script to any HTML page you want to track:
<script src="https://analytics.youraccount.workers.dev/track.js"></script>
Requires a KV namespace for storing links. Run this before deploying:
wrangler kv:namespace create LINKS
Then add the KV binding to your wrangler.toml (use the ID from the output):
[[kv_namespaces]]binding = "LINKS"id = "paste-the-id-from-above"
Configure your test variants in the CONFIG section. Tests use cookie-based sticky sessions so users always see the same variant.
const TESTS = {Deploy and point your image URLs through the worker. It auto-converts to WebP/AVIF based on the browser.
https://images.youraccount.workers.dev/?url=https://example.com/photo.jpg&w=800&q=80
Requires a KV namespace for storing redirect rules:
wrangler kv:namespace create REDIRECTS
Set up your forwarding rules in the config. Map any address on your domain to your real inbox.
const ROUTES = {You need a Discord Application. Create one at:
discord.com/developers/applicationsAdd your bot token and application ID to the config section:
const DISCORD_TOKEN = "your-bot-token";const APP_ID = "your-app-id";
Add the domains you want to monitor in the config:
const DOMAINS = [Add a cron trigger to check daily:
[triggers]crons = ["0 9 * * *"] # every day at 9 AM
Add your API endpoints with custom headers and expected responses:
const ENDPOINTS = [{Requires a KV namespace for storing logs:
wrangler kv:namespace create LOGS
Add your Cloudflare API token and Zone ID in the config:
const CF_API_TOKEN = "your-api-token";const CF_ZONE_ID = "your-zone-id";
You need a Spotify Developer App. Create one at:
developer.spotify.com/dashboardAdd your Spotify credentials in the config:
const SPOTIFY_CLIENT_ID = "your-client-id";const SPOTIFY_CLIENT_SECRET = "your-client-secret";const SPOTIFY_REFRESH_TOKEN = "your-refresh-token";
Deploy and it works immediately. Customize prizes and appearance in the config:
const PRIZES = [Add your payment wallet addresses and product catalog:
const WALLETS = {Requires a KV namespace for orders:
wrangler kv:namespace create ORDERS
Requires a KV namespace for storing license keys:
wrangler kv:namespace create LICENSES
Set your admin password in the config:
const ADMIN_KEY = "your-secret-admin-key";
Configure your backup sources and schedule:
const BACKUP_SOURCES = [Add a cron trigger in wrangler.toml:
[triggers]crons = ["0 3 * * *"] # daily at 3 AM
Something not working? Check below first -- these cover 95% of all issues.
Wrangler isn't installed yet, or Node.js isn't installed. Fix it in two steps:
1. Install Node.js from nodejs.org (download LTS, run the installer)
2. Then install Wrangler: npm install -g wrangler
Restart your terminal after installing Node.js.
Run wrangler login in your terminal. Your browser will open. Click "Allow" on the Cloudflare page. That's it.
If you're behind a corporate firewall, try wrangler login --browser=false and manually open the URL it shows.
Some tools (Link Shortener, Log Analyzer, etc.) need a KV namespace. Create it first:
wrangler kv:namespace create YOUR_NAMESPACE_NAME
Then add the binding to your wrangler.toml using the ID from the output. See the tool-specific section above for the exact namespace name needed.
Check your Cloudflare account type. The free tier supports Workers up to 1MB. All SpunkArt tools fit within this limit.
If you see "script too large," make sure you're deploying only the single .js file, not a node_modules folder. Your folder should have just 2 files: the .js and wrangler.toml.
Node.js is not installed. Download it from nodejs.org -- pick the LTS (Long Term Support) version. npm comes bundled with Node.js automatically.
After installing, close and reopen your terminal, then try again.
By default, your tool lives at tool-name.youraccount.workers.dev. To use your own domain:
1. Add your domain to Cloudflare (free plan works)
2. In the Cloudflare dashboard, go to Workers & Pages > your worker > Settings > Triggers
3. Add a Custom Domain or Route (e.g., monitor.yourdomain.com/*)
When you receive an updated .js file, just replace the old file and run wrangler deploy again. Same command, same folder. Your config changes in the file will be preserved if you keep your customized CONFIG section.
Yes. Each tool deploys as a separate Worker. Free Cloudflare accounts support up to 30 Workers. Deploy all 18 SpunkArt tools on a single free account with room to spare.
Yes. The free tier includes 100,000 Worker requests per day. That's roughly 3 million requests per month. Unless you're running a massive site, free is more than enough.
We're here for you. Most issues are resolved within an hour.
Join the SpunkArt newsletter. Get a free Cloudflare Worker template + 10% off your first purchase.