DEV Community

WaseemAnjum
WaseemAnjum

Posted on

Why I Stopped Building a Generic Link-in-Bio Tool (And Started Over)

A few months ago I went down the classic indie-hacker rabbit hole: "link-in-bio" tools. You've seen them — Linktree, Beacons, a dozen clones. A vertical stack of pill-shaped buttons on a phone screen. I figured it'd be a quick weekend build: auth, a drag-to-reorder list, a public page, done.

Then I actually looked at who uses these pages.

A wedding photographer's bio link and a Solidity developer's bio link were, structurally, the exact same page. Same layout. Same type scale. Same "add a block" mental model. The only thing that changed between a musician, a doctor, and a SaaS founder was the hex code on the buttons.

That felt wrong. A photographer's first impression should probably be a portfolio grid, not a list of hyperlinks. A developer's page should probably look like it was made by someone who ships code, not someone who picked a template. A doctor's booking page needs to read as trustworthy in about half a second, not "creative."

The idea: ask the profession first

So I rebuilt the whole thing around one decision at signup: what do you do?

Cladly asks that up front, then hands you a "skin" — not a color theme, an actual different layout, typography system, motion, and set of starter link types built for that craft:

  • Terminal (developers): dark, monospace, repo-and-changelog friendly
  • Atelier (designers): portfolio-first, editorial grid, big imagery
  • Encore (musicians): cover art hierarchy, listen/stream buttons, tour dates
  • Rounds (doctors/clinicians): sober palette, trust signals, booking front and center

There are 14 of these right now, and the goal isn't "more themes," it's fewer wrong defaults. If you're a developer, you shouldn't have to fight a template built for a lifestyle influencer to make your page look credible.

What was actually hard to build

The interesting engineering problem wasn't the link list — it was making "skin" a first-class concept instead of a CSS variable swap. Each skin owns its own layout primitives, spacing scale, and animation choices, but they all still read from the same underlying content model, so switching skins doesn't lose your data. That separation (content vs. presentation vs. profession-specific layout logic) ended up being most of the actual architecture work.

The second thing was analytics without the usual tracking-pixel tax. Every bio-link click is a "first touch" moment, often from someone who's never seen your domain before — I didn't want to make that experience worse by dropping third-party trackers on it. So views, clicks, CTR, top links, and peak hours are all computed server-side from the request itself, no pixel, no cookie banner required for basic stats.

Where it's at

It's free to start — one page, unlimited links, five skins, 7-day analytics — because the whole premise (profession-aware defaults) only proves itself if enough different kinds of people actually try it. Pro adds the rest of the skins, AI-assisted setup, and longer analytics history.

If you manage a personal brand, a portfolio, or a team's bio page and you've been mildly annoyed that every one of these tools makes you look like everyone else, I'd genuinely like your feedback: cladly.bio — takes about three minutes to get a page live.

Happy to answer questions about the skin architecture, the analytics pipeline, or the roadmap in the comments.

Top comments (1)

Some comments may only be visible to logged-in visitors. Sign in to view all comments.