Dev iconDevMay 3, 2026 ~1 min source read

How I Built a Free Online Time Toolkit with Next.js 16 (PWA, i18n, Web Audio)

A story about building Clock-Tani — 9 free time-management tools in a single PWA, written with Next.js 16 App Router. Live at https://clock-tani.com Why I Built This I needed a pomodoro timer at work, but every option was either ad-heavy, app-only, or just ugly.

How I Built a Free Online Time Toolkit with Next.js 16 (PWA, i18n, Web Audio)

Share this story

Send the public story page.

Useful takeaways from this story.

A story about building Clock-Tani — 9 free time-management tools in a single PWA, written with Next.js 16 App Router.

Live at https://clock-tani.com Why I Built This I needed a pomodoro timer at work, but every option was either ad-heavy, app-only, or just ugly.

That place is now Clock-Tani — 9 small but useful tools, no ads in the core experience, no signup required.

Building the complete brief

The page is ready to read now. The fuller skim-friendly version will appear here automatically.

The useful part

A story about building Clock-Tani — 9 free time-management tools in a single PWA, written with Next.js 16 App Router. Live at https://clock-tani.com Why I Built This I needed a pomodoro timer at work, but every option was either ad-heavy, app-only, or just ugly. That place is now Clock-Tani — 9 small but useful tools, no ads in the core experience, no signup required.

How it works

  • App Router i18n with next-intl I used the /[locale]/[tool] structure with localePrefix: 'always' so even /clock redirects to /ko/clock.

Details worth keeping

Same story for world clocks, countdown timers, and interval timers.

Keep reading in the app

Open the app view to save this story, compare related coverage, and continue from the same source.

Open in app