[verdict][curated prompt][source: bitly.com]
Can I vibecode Bitly?
// one session, and a personal version you can actually use
A slug, a lookup, a 302, and a row in a table. Cloudflare Workers plus KV and D1 does the whole job on the free tier, and QR codes are one library call. The only thing you are really buying is that bit.ly resolves links created in 2012 and will presumably still resolve them in 2032, which is an institutional promise rather than a technical one. If the links are going in a magazine ad or on packaging, that promise is worth something. If they are going in this week's newsletter, it is worth nothing, and Growth is 420 USD a year.
confidence: high
what it is: Short links, branded back-halves, QR codes, and click analytics
Buildability index · an editorial game
- Price 35 $/month weight: plus 3
- Time one sitting weight: plus 3
- Category analytics no weight
- Moat brand and trust · infrastructure scale weight: minus 3
- Confidence high weight: plus 1
- What you lose 5 items weight: minus 2
- Site bitly.com (si apre in una nuova scheda) no weight
The maths works, but not by much: look at what you lose before you start.
Gioco editoriale: il verdetto dice se un agente può, l’indice se conviene.
What you build
Map a short slug to a destination, 302 to it, log the click with device and country, and render a QR code for any link.
what you need
- Cloudflare account (Workers, KV, D1)
- a domain you control
- wrangler CLI
You are not paying for the redirect · you are paying for the promise that it still works in ten years.
The prompt
One session with a coding agent and your version runs.
Build me a link shortener with click analytics and QR codes to replace Bitly. Requirements:
- Cloudflare Workers via wrangler: KV for the slug lookup, D1 for the click
log. Free tier, and it runs on my own domain.
- A worker on go.mydomain.com/{slug} reads KV and 302s, writing the click to
D1 inside ctx.waitUntil so the redirect never waits on the database.
- Slugs are random 6-character base62 by default, but I can set a custom
back-half, and creating one that already exists fails loudly instead of
overwriting it.
- Log per click: slug, timestamp, country and city from request.cf,
device type parsed from the user-agent, and referer.
- Generate a PNG QR code for any link with the qrcode npm package, served at
/qr/{slug} and cached, so print material points at the same tracked link.
- Optional expiry and a click cap per link · past either, 302 to a fallback
URL I set instead of returning a 404.
- An /admin page behind one password (wrangler secret) listing links with
clicks per day, plus top countries and device split per link.
- Secrets via wrangler secret, never in wrangler.toml. No accounts, no
third-party analytics, no telemetry.
- README: wrangler setup, the KV namespace and D1 database, the DNS record,
and a warning that these links die with the domain, so use a domain you
intend to keep renewing. Curated prompt: written and reviewed by hand for this app. In English on purpose — it is the language coding agents work best in.
What you lose
- links that outlive your own infrastructure · a domain you stop renewing takes every link with it
- bit.ly's recognition in the link itself, which cuts both ways now that shorteners get spam-filtered
- bundled QR code management, landing pages, and campaign grouping
- city-level and device-level analytics rollups without building them
- an SLA and someone to call
Why people still pay
Bitly's actual product is a promise about the future: that a link printed on a box in 2019 still resolves today. No amount of code buys that, only an institution that intends to keep existing. Teams also pay for shared workspaces, SSO, and the audit trail, and marketing departments pay because the alternative is asking engineering for a redirect and waiting two weeks.
moat: Brand and trust Infrastructure scale what a moat is
link permanence
Free alternatives
Not in the mood to build it? These already exist, they are free or open source, and we checked them one by one.
Who has already built it
Starting from here is still vibecoding: the prompt is for when you want it exactly your way.
- Dub (opens in a new tab) — The most complete open-source link platform · analytics, custom domains, QR codes. Self-hostable. (alive)
- Shlink (opens in a new tab) — Self-hosted URL shortener with a REST API, click stats, and QR codes. (alive)
- YOURLS (opens in a new tab) — The long-running PHP shortener · drop it on any LAMP host and it works. (alive)
Do you agree?
The vote balance
Ancora nessun voto: il tuo è il primo.
Nessun voto ancora — il primo pesa.