v0.3.0Flex Timer.
Flex Timer.
A focus timer with a randomized duration, so you can't clock-watch.
A tiny focus timer that runs for a random length within your own min/max window. A soft chirp marks the halfway tick, and a two-hoot chimp tells you time's up. No screen-watching required.
Install
Run locally
or browse the repo$
git clone https://github.com/nimahejazi/flex-timer.git$
cd flex-timer$
npm install && npm run devbash - flex-timer
$npm run dev
> flex-timer@0.3.0 dev
> vite
VITE v5.4.11 ready in 212 ms
➜ Local: http://localhost:5173/
➜ press h + enter to show help
$_
Try it live
Loading Flex Timer…
Loading Flex Timer…
Engineered for Focus
Randomized duration
Each timer is a random length within your min/max window (default 11–15 min). You can't clock-watch, so you just work until the chimp hoots.
Your window, your rules
Set min/max duration, tick interval, and whether the tick chirps at all. Settings persist in your browser via localStorage.
Sound cues, no files
A periodic tick chirp during the countdown and a two-hoot chimp at zero, synthesized live with the Web Audio API. No audio downloads.
Keyboard first
Space to start or pause, S to start when stopped, C to cancel, R to restart. Hands stay on the keys.