Alarm Clock
A simple, distraction-free alarm clock that runs in your browser. Set a time, optional label, and tone — the tab title flashes when it fires, and the sound plays even if you've switched away.
What people use this alarm for
A browser alarm clock is the smallest, lowest-friction timer you can run — no app install, no phone unlock, no account. Here are the everyday cases we see most:
- Pomodoro and focus sprints. 25 minutes of deep work, 5-minute break. Set the alarm, switch back to the doc, and the tab-title flash + tone pulls you out without fumbling for a phone.
- Meeting timers and standups. A countdown the whole room can see on a shared screen, with a tone everyone hears. No app to install on the conference-room laptop.
- Power-nap timer. Twenty minutes is the sweet spot before deep sleep sets in. The full-screen overlay snaps you out cleanly.
- Cooking and laundry. Pasta in 9 minutes, rice in 18, washer cycle in 45. One tab, alarms back-to-back via snooze.
- Class and study reminders. Students wanting a no-install nudge between blocks — works in any browser, on any laptop, leaves nothing behind.
- Phone-free wake-up at the desk. Phone deliberately in another room? The desktop tab still rings.
The alarm runs entirely in the page. Nothing about your time, label, or tone is sent to a server. Close the tab and the timer is gone — open it again next time and your last settings are remembered locally.
How it works
Step 1 — pick a time: use the time input (24-hour on desktop, native time picker on mobile). If the time you pick is later today, the alarm fires today; if it's already passed, it rolls to tomorrow.
Step 2 — set the alarm: we play a quick preview tone so the browser unlocks audio for later. The status panel shows the countdown to fire.
Step 3 — when it rings: a full-screen overlay appears with the label and current time, the tab title flashes, and the tone plays. Snooze adds 5 minutes; Dismiss clears the alarm.
Tones are generated on the fly with the Web Audio API — no audio files, no network round-trips. Everything runs entirely in your browser, and nothing is uploaded.
Frequently asked questions
Will the alarm fire if my tab is in the background?
Yes — modern browsers keep timers running in background tabs, so the alarm will still go off at the target time. Audio will play as long as the tab is alive. If you fully close the tab or your browser, the alarm is gone. For an extra safety net, click "Enable browser notifications" to allow an OS-level notification when the alarm fires.
Why is the first sound a tiny preview?
Browsers block audio until the user interacts with the page (the autoplay gesture rule). When you click "Set alarm," we play a one-shot preview so the audio context is unlocked. When the alarm fires later, sound starts immediately — no second click needed.
Does my alarm survive a page reload?
Only the last-used time, label, and tone are saved (in localStorage on your device). The armed state itself is not persisted — if you reload, you'll need to click "Set alarm" again. This is intentional: silent re-arms after a reload would be surprising.
Is there a snooze?
Yes — when the alarm rings, the Snooze button re-arms it for 5 minutes from now. Dismiss clears the alarm entirely.
Can I set multiple alarms or recurring alarms?
Not yet. v1 is one-shot only — one alarm at a time. Recurring ("every weekday") and multi-alarm support are on the roadmap. If you need them, open an issue on GitHub.
Does this work on iOS Safari?
Yes for the visual alarm and tone, as long as the tab stays open and active. iOS aggressively suspends background tabs in Safari, so for guaranteed off-screen alarms on iPhone, use the built-in Clock app. This tool is best for desktop and short-horizon alarms.
Do you save my alarm time or label?
Only on your device, via localStorage, so the inputs are prefilled next time you visit. We never transmit any of it. Clearing your browser data wipes it.
Sources & references
From official issuer, regulator, and data-provider sites. Verify any figure against the primary source before acting on it.