💠 50x50
About
This project was created as an assignment for Q42.nl
Assignment
Maak een 50x50 grid. Als je klikt op een cel wordt bij alle cellen in de rij en kolom van de cel 1 opgeteld. Was een cel leeg dan wordt die op 1 gezet. Na elke verandering licht een cel kort geel op. Als 5 elkaar in de Fibonacci-reeks opvolgende getallen naast elkaar staan, lichten deze cellen kort groen op en worden ze leeg gemaakt. Gebruik de programmeertaal die je het beste vindt passen.
Key Acceptance Criteria
- There is a 50x50 grid of clickable cells
- Clicking on a set will increase the value of the entire row and column by
+1
(empty cells have a value of 0
).
- Cells pulse yellow when it's value increases
- If five cells in a row are part of the fibonacci sequence:
Pulse these cells green and reset the value to 0 (emptying them).
Local Development
This project is created using Go and javscript. And following the
scripts-to-rule-them-all method:
To get all dependencies up and running just run:
$ script/bootstrap
Then start the server and client separate terminals:
$ script/server
$ script/client
Then open your browser at http://localhost:1234
Tasks
These are roughly the steps I took, you can also checkout the Git history!
- Backend bootstrap
- Basic calls
- Client boilerplate
- Client grid based on data
- Clickable grid
- Backend value increase
- Client yellow pulse
- Backend fibonacci search and action
- Client green pulse
- Documentation and deployment
- Extract handlers from main
- Better Error reporting
- Error handling clientside