Skip to content

RinthLabs/StayOnTime

Repository files navigation

StayOnTime

A floating, always-on-top countdown timer perfect for live streaming, events, presentations, and Pomodoro technique productivity sessions.

StayOnTime Screenshot

Features

  • Always on top - Stays visible above all other windows
  • Draggable - Move it anywhere on your screen
  • Transparent background - Clean text with drop shadow for visibility
  • Customizable duration - Set any timer length from 1-120 minutes
  • Overtime mode - Option to continue counting past 0:00 (displays in red)
  • Customizable keyboard shortcuts - Configure your own hotkeys or disable them entirely
  • Portable - Single .exe file, no installation required
  • Self-contained - All settings stored internally, no external config files

Use Cases

Live Streaming

Keep track of stream segments, break timers, or Q&A sessions with a visible countdown that won't interfere with your content.

Events & Presentations

Display time remaining for speakers, workshops, or event segments in a professional, non-intrusive way.

Pomodoro Technique

Perfect for productivity sessions. Set 25-minute work intervals or 5-minute breaks to maintain focus and productivity.

General Time Management

Any situation where you need a visible countdown - cooking, workouts, meetings, study sessions, and more.

Controls

Buttons

  • ▶/⏸ (Play/Pause) - Toggle timer start/pause (button changes icon based on state)
  • ↺ (Reset) - Reset timer to initial duration
  • ⚙ (Settings) - Open settings panel

Keyboard Shortcuts (Optional)

Keyboard shortcuts are disabled by default to avoid conflicts with other applications. Enable them in Settings.

  • Space - Start/Pause timer (default)
  • R - Reset timer (default)
  • Esc - Close application (default)

Note: Keyboard shortcuts can be customized in Settings.

Mouse

  • Click and drag the timer display to move the window

Settings

Click the ⚙ (Settings) button to configure:

Timer Duration

Set the default timer length in minutes (1-120 minutes).

  • Default: 20 minutes
  • Common presets:
    • 5 min (short break)
    • 15 min (quick session)
    • 20 min (default)
    • 25 min (Pomodoro work session)
    • 45-60 min (long work session)

Allow Overtime

Controls what happens when the timer reaches 0:00.

  • Enabled (checked): Timer continues past 0:00, displaying negative time in red. Useful for knowing how far over time you've gone.
  • Disabled (unchecked): Timer stops at exactly 0:00 and automatically pauses. Useful for strict time limits.

Keyboard Shortcuts

Keyboard shortcuts are disabled by default to avoid conflicts with other applications. Enable and customize them here.

  • Enable Keyboard Shortcuts: Toggle to enable or disable all hotkeys (default: disabled)
  • Start/Pause Key: Customize the key to start/pause the timer (default: Space)
  • Reset Key: Customize the key to reset the timer (default: r)
  • Close App Key: Customize the key to close the application (default: Escape)

Examples of custom keys: Enter, Tab, F1-F12, a-z, 0-9, ArrowUp, ArrowDown, etc.

Note: Settings are saved automatically and persist between sessions.

Building from Source

Prerequisites

  • Node.js (v16 or later)
  • npm

Install Dependencies

npm install

Run in Development Mode

npm start

Build Portable Executable

npm run build

This creates a portable .exe file in the dist folder:

  • Location: dist/StayOnTime-Portable.exe
  • Size: ~150-200 MB (includes Electron runtime)
  • Portable: Single file, runs on any Windows PC without installation
  • No dependencies: Everything is bundled in the .exe

Technical Details

  • Framework: Electron
  • Languages: HTML, CSS, JavaScript
  • Platform: Windows (64-bit)
  • Settings Storage: localStorage (internal to the app)
  • Window: Frameless, transparent, always-on-top

License

MIT License - Feel free to use, modify, and distribute.

Tips

  • Position the timer in a corner or edge of your screen where it won't obstruct content
  • For streaming, use OBS Window Capture to include the timer in your stream
  • The red overtime color provides a clear visual indicator when time is up
  • Use 25/5 minute intervals for classic Pomodoro technique (25 min work, 5 min break)

About

A floating, always-on-top countdown timer perfect for live streaming, events, presentations, and Pomodoro technique productivity sessions.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors