commitra / commitra/vanilla-verse

Countdown Timer — input, controls, and finish alert

Open
#163 4 comments 0 reactions 1 assignee Claimed by @ctokam View on GitHub
enhancement good first issue hacktoberfest
Dominant language
JavaScript
Stars
14
Forks
60
PR merge metrics
No merged PRs in 30d

Description

### Project slug (e.g., snake, todo)

countdown-timer

### Summary

Create a countdown timer with minute/second input, start/pause/reset, and a completion alert (sound + visual).

### Details / Acceptance criteria

Acceptance Criteria:
- Validates input (non-negative, reasonable max).
- Start/pause/resume/reset function correctly.
- Optional beep on finish (muted by default if no user gesture).
- Title updates with remaining time during countdown.
- Keyboard shortcuts: Enter (start/pause), R (reset).
- Visually shows progress (e.g., progress bar or ring).

Files:
- projects/countdown-timer/index.html
- projects/countdown-timer/styles.css
- projects/countdown-timer/main.js

Tasks:
- Build inputs, controls, and progress UI.
- Implement countdown using setInterval or rAF with drift correction.
- Add finish handlers (sound + focus/ARIA live region).

### Scope

- [x] UI changes
- [x] Logic changes
- [x] Accessibility
- [x] Tests (manual)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.