DEV Community

NICK
NICK

Posted on

Fifty tools, none of them talk to each other

There is a pattern in how small utility sites die. They start as one page that does one thing well. Then someone adds an account, because accounts mean retention. Then a dashboard, because accounts need somewhere to live. Then a "workspace", because a dashboard with one tool in it looks empty. Two years later the original tool takes four clicks and a login to reach, and the site is competing on features with software it never wanted to be.

The other failure is quieter: the site stays one page forever, the author gets bored, and the tools rot because there is nothing to fix.

I have been building in the second mode for a while now, and the constraint I keep coming back to is this: one page, one job, no account, no upload. Fifty tools later, that constraint has produced more decisions than any feature I could have added.

The unit is a page, not a product

Every tool is a single page. You arrive from a search result, you paste or type something, you get an answer, you leave. There is no home dashboard, no project list, no "recent files".

That sounds like a limitation. It is actually the thing that makes the site maintainable: a page that does one job can be read in one sitting, tested by hand, and fixed without understanding anything else. When a tool breaks, I know exactly which page broke.

It also makes the tools cacheable and fast in a way a single-page app with fifty routes usually is not. Each tool is its own document. Nothing loads until you need it.

No account is a feature, not a phase

The temptation is always there: add accounts so you can keep someone's history. But an account changes what the site is. The moment there is a login, every page has to answer "what if you are not logged in", and the answer is always a degraded version of the tool.

The tools are built so that the data never leaves the tab. Conversions happen in memory, the result is copied out, and closing the tab erases everything. That is a genuine privacy property, and it is also an engineering simplification: no storage layer, no auth, no GDPR surface, no password reset flow to maintain at 2am.

The cost is real and I should state it: I cannot show you what you did last week, and I cannot build anything that accumulates across sessions. Half the product ideas I write down die at that sentence.

Do not merge the tools

The obvious "improvement" is one big toolbox: a sidebar with fifty items, one shell, shared components. Every few months I consider it.

It fails on the same test as accounts. A combined toolbox makes the first tool a click further away, in exchange for making the fiftieth tool discoverable. Since almost all traffic arrives from search straight to one tool, the trade is a loss for the majority to benefit a minority.

The 50-page structure also keeps the pages honest. Two tools that look similar stay separate if their answers differ; merging them would force a shared interface, and a shared interface is a compromise that serves neither.

Free, and the awkward part about it

The site carries ads. That is worth saying plainly rather than burying, because "free" and "unobtrusive" are different claims and only the first one is true.

The alternatives I ruled out were a paywall on a unit converter and an account wall in front of a timestamp tool. Between a banner and a login, the banner is the smaller intrusion — but it is still an intrusion, and pretending otherwise is the kind of marketing that makes people distrust small sites.

What this buys, and what it does not

What it buys: the site is cheap to run and cheap to fix. I can ship a new tool in an afternoon without touching the rest. Search engines index fifty focused pages instead of one undifferentiated app. A visitor from a search result is never asked for anything.

What it does not buy: retention, a brand, or a reason for anyone to come back tomorrow. Fifty single-purpose pages are a reference, not a habit. That is the honest trade, and it is the right one for tools people need twice a year.


If you want to see what the constraint produces in practice, the utility end of the site is the honest sample: a JSON/YAML/TOML converter, px↔rem, Unix timestamps, a regex tester that explains the pattern, a readability scorer.

the utility tools on 1024Toolkit

Top comments (1)

Collapse
 
officialmailkr profile image
오피셜메일 •

한 페이지에서 한 작업을 끝내고 나간다는 사용 맥락을 기준으로, 계정과 대시보드를 넣지 않은 이유가 분명하네요. 광고가 있다는 점도 별도로 밝혀주셔서 무료와 방해가 없다는 주장을 구분해 읽을 수 있었습니다. 입력값이 탭 밖으로 나가지 않는다는 기준은 광고를 포함한 실제 네트워크 요청에서도 점검하고, 복사·다운로드가 끝난 뒤 다시 시작할 때 이전 입력이 남지 않는지도 확인하면 좋겠습니다.