This is a project to create a Sudoku game using Angular. To run the project locally, follow these steps:
- Clone the repository from GitHub.
git clone https://github.com/xocomil/AngularSudoku.git
- If you have volta installed, then the
node
version is already pinned. - We use pnpm as the package manager, so use that to install dependencies.
pnpm install
- We use nx to manage the project, so use that to launch the application.
pnpm nx serve
- Navigate to
http://localhost:4200/
in your browser to see the Sudoku game.
- Column, row, region and error highlighting
- Validate the board
- Solve a Sudoku puzzle using wave-function collapse
- Full undo/redo functionality
- Puzzle mode to enter your own puzzles
- Includes full keyboard support including arrow key navigation,
w
,a
,s
,d
for navigation, and1
-9
for entering numbers - Includes a11y support including support for screen readers, tab key and escape key navigation
Unit tests are done with nx
and jest
. To run the unit tests, use the following command:
pnpm nx run-many --taget=test
Component tests are done with nx
and cypress
. To run the component tests, use the following command:
pnpm nx run-many --target=component-test
There is a storybook for the components. To run the storybook, use the following command:
pnpm nx storybook components