Skip to content

Latest commit

 

History

History
40 lines (24 loc) · 1.17 KB

requirements.md

File metadata and controls

40 lines (24 loc) · 1.17 KB

on page load

  • fetch new game from API
  • check localStorage for existing user data
  • if user data differs from original data, show this difference in UI
  • get difficulty from localStorage, default to "easy"

dipsplay tip at the start of the game

  • click on 'x' to close tip modal
  • persist user state in localStorage to hide tip on refresh

user can select cell by clicking

  • in UI: highlight all columns, rows and subgrids that contain user selected cell
  • 1) if cell is empty, only show highlights as listed above

user enters a number by keyboard

  • if number is valid - highlight as default
  • if number is invalid - highlight all matching numbers in all columns, rows and subgrids that contain the user's number
  • display incorrect input in red font, red background for matching colors

user enters an arrow key (up, right, down, left)

  • switch focus

Non-board related features

  • on completion a message is displayed

  • button below board for selecting difficulty and resetting the board

  • game header displays current difficulty

  • Timer

  • internationalization

  • demo button to show UX as game ends