It's a piano that counts the amount of keys you press. It has sound...
- As a musican, i want to feel like i'm playing a piano.
- As someone who loves listening to music, i want to be able to hear the audio.
- As a gamer, i want to be scored on my performance.
- As someone who enjoy challenges, i want to be challenged by the game.
In the add-game branch you might be able to find some experimental features.
- Accept at least 2 kinds of user input
- Have some form of persistent state and interactivity, e.g.
- Countdown timer
- Score tracker
- Previous guesses
- Save your state to localstorage so you can leave the page and come back later
- Make it look great
- Came up with ideas but most of them were rejected due to the complexity of them. (Packman's ai, flappy birds).
- Determined what our main app and user stories would be.
- Verified that we are meeting all the acceptance crtieria within the project.
- Created issues and netlified our app.
(Before Lunch)
- Assigned Issues & identified the best way to work as 3's.
- Found a project reference
- Created the basic layout of the piano
- Added basic styles
- Added audio files
- Identifed the best way to apporach the project which is to use mapping and objects
(After Lunch)
- Add key listeners
- Added visual feedback for active keys
- Handled start/stop game
- Created sequence
- Added way to simulate keydown events
- Started the gamified version of the project
- Arrived at the conclusion that group coding was kewl
- Finished acceptance criteria
- Broke down issues into smaller ones
(Before Lunch)
- Create loop to validate user input attempt
- Worked in pairs of 3 with 10min rotations
(After Lunch)
- Deploy to netlify issue...
- Completed Create Loop to validate user input
- Refactored our codes to be able to solve the problems
(Before Lunch)
- Reviewed our codes together from the start
- Added display message for game won / game over
- Added key displays on our piano
- Minor refeactoring of our codes
(After Lunch)
- Patrick: Scrum Facilitator
- Abdullah: QA
- Suraj: UX/UI
Make sure you have Git and Node (v18) installed.
Clone this repo and cd into the directory
Run npm install to install all the dependencies
Run npm run dev to run the project
Throughout our project we had severe challenges which led us to a new approach to solve problems. We learnt to split our issues into multiple small issues, create a list of tasks to work on in order and use pseudo-code before tackling the challenge.
Discord VS Code Live Share extension Github Project Board Software Methodologies During our planning stage, we identified there were functions and components that would be reused in the project. As a result, we decided to include modularization and attempted to follow the DRY principle.