---
id: bd7158d8c442eddfaeb5bd1c
title: Costruisci un gioco Simon
challengeType: 3
forumTopicId: 302357
dashedName: build-a-simon-game
---

# --description--

**Obiettivo:** Costruisci un'app [CodePen.io](https://codepen.io) funzionalmente simile a questa: [https://codepen.io/freeCodeCamp/full/obYBjE](https://codepen.io/freeCodeCamp/full/obYBjE).

Soddisfa le seguenti [user story](https://en.wikipedia.org/wiki/User_story). Utilizza le librerie o le API di cui hai bisogno. Usa il tuo stile personale.

**User Story:** Mi viene presentata una serie casuale di pressione dei bottoni.

**User Story:** Ogni volta che inserisco correttamente una serie di pressione di bottoni, vedo la stessa serie ma con uno step in più.

**User Story:** Sento un suono che corrisponde a ogni bottone sia quando la serie di bottoni è premuta automaticamente, sia quando personalmente premo un bottone.

**User Story:** Se premo il pulsante sbagliato mi viene detto, e la serie di pressioni dei bottoni ricomincia di nuovo in modo da ricordarmi quale è la serie corretta e possa provare di nuovo.

**User Story:** Posso vedere quanti step ci sono nella serie attuale di pulsanti.

**User Story:** Se voglio ricominciare, posso premere un bottone per farlo, e il gioco ritornerà a una serie con uno step solo.

**User Story:** Posso giocare in modalità severa dove se premo il pulsante sbagliato, mi dice che ho sbagliato, e il gioco ricomincia con una nuova serie casuale di pulsanti.

**User Story:** Posso vincere il gioco inserendo correttamnete una serie di 20 step. Vengo informato della mia vittoria, poi il gioco ricomincia da capo.

**Suggerimento:** Ecco degli mp3s che puoi usare per ogni pulsante: `https://s3.amazonaws.com/freecodecamp/simonSound1.mp3`, `https://s3.amazonaws.com/freecodecamp/simonSound2.mp3`, `https://s3.amazonaws.com/freecodecamp/simonSound3.mp3`, `https://s3.amazonaws.com/freecodecamp/simonSound4.mp3`.

Quando hai finito, includi un link al tuo progetto su CodePen e clicca sul pulsante "Ho completato questa sfida".

Puoi ottenere un feedback sul tuo progetto condividendolo sul forum [freeCodeCamp](https://forum.freecodecamp.org/c/project-feedback/409).

# --solutions--

```js
// solution required
```
