Fast, free URL shortener on Cloudflare's edge network
Features • Quick Start • How It Works • Costs
The fastest way to deploy your own instance:
-
Fork this repo to your GitHub account
-
Open Claude Code and run:
claude "Help me deploy URLsToGo to my Cloudflare account" -
Follow Claude's prompts - it will:
- Create your D1 database
- Set up your custom domain
- Configure GitHub secrets
- Deploy everything automatically
That's it. Claude handles all the Cloudflare configuration.
- Cloudflare account (free) - Sign up
- GitHub account (free) - For the repo and Actions
- A domain on Cloudflare - For your custom short link domain (e.g.,
links.yourdomain.com)
User clicks: links.example.com/gh
↓
Cloudflare Worker (edge, <50ms)
↓
D1 Database lookup
↓
302 Redirect → github.com/user/repo
| Component | Technology |
|---|---|
| Compute | Cloudflare Workers (serverless) |
| Database | Cloudflare D1 (SQLite at edge) |
| Auth | Clerk (Google OAuth) |
| CI/CD | GitHub Actions (auto-deploy) |
Visit https://your-domain.com/admin to:
- Create, edit, delete links
- Organize with categories and tags
- Search your links
- View click statistics
- Export/import data
Your links work like: https://links.example.com/shortcode → redirects to destination
Full REST API available at /api/* - see MANUAL.md for endpoints.
Everything runs on Cloudflare's free tier:
| Resource | Free Limit |
|---|---|
| Workers | 100,000 requests/day |
| D1 Database | 5GB storage |
| Clerk | 10,000 MAU |
No credit card required. No surprise bills.
Prefer to set things up yourself? See MANUAL.md for:
- Step-by-step Cloudflare configuration
- GitHub Actions setup
- API documentation
- Database schema
- Troubleshooting
URLsToGo/
├── src/
│ └── index.js # Main Cloudflare Worker
├── migrations.sql # D1 database schema
├── wrangler.toml # Cloudflare config
├── .github/
│ └── workflows/
│ └── deploy.yml # Auto-deploy on push
└── MANUAL.md # Full documentation
GPL-3.0 - See LICENSE for details.