CodeYourFuture / CodeYourFuture/Module-Data-Groups

Build an alarm clock app

Abierto
#26 0 comentarios 0 reacciones 0 asignados Ver en GitHub
🏕 Priority Mandatory 🐂 Size Medium 📅 Sprint 3 Core Module-Data-Groups Submit:PR
Lenguaje dominante
JavaScript
Estrellas
1
Forks
326
Merge medio
3 h 25 min
PR fusionados (30 d)
2

Descripción

### Link to the coursework

https://github.com/CodeYourFuture/Module-Data-Groups/tree/main/Sprint-3/alarmclock

### Learning Objectives

- [ ] Develop a web app according to a specification
- [ ] Practice working with timers in JavaScript

### Why are we doing this?

These challenges are designed to develop your problem-solving skills.

In this exercise you need to build an alarm clock which meets the following criteria:

#### Acceptance criteria

- [ ] Given the user has entered a number in the input field
When the user clicks the "Set Alarm" button
Then the "Time Remaining" title should update to show the entered number in mm:ss format

- [ ] Given the alarm is set with a valid time
When one second passes
Then the "Time Remaining" title should decrement by 1 second

- [ ] Given the alarm is set with a time of 00:00
When the timer reaches 00:00
Then the alarm sound should play continuously

- [ ] Given the alarm sound is currently playing
When the user clicks the "Stop Alarm" button
Then the alarm sound should stop playing

- [ ] Given the alarm is set with a time of 00:10
When the timer reaches 00:00
Then the background colour should change
And the alarm sound should play

- [ ] Given the user has not set an alarm
When the page first loads
Then the "Time Remaining" title should show 00:00
And no alarm sound should play

### Maximum time in hours

4

### How to get help

General advice on asking for help can be found on the [curriculum pages](https://curriculum.codeyourfuture.io/guides/getting-help/asking-questions/).
You can always share your blockers in your class channel and get help from your colleagues.

### Submission & Review

1. Fork the coursework repo to your Github account.
2. Make a branch for this project.
3. Make regular small commits in this branch with clear messages.
4. When you are ready, open a PR to the CYF repo, following the instructions in the PR template.

There are several projects in this repo. [Make a new branch](https://simpledev.io/lesson/create-branch-gh-desktop-1) based on the `main` branch for each project.

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.