A Tic-Tac-Toe game with 3 levels of difficulty. At the 'difficult' level uses minimax algorithm, which makes it unbeatable.
A detailed tutorial with all the steps for building the game: Build a Tic-Tac-Toe Game with TypeScript and React Hooks.
A tutorial for testing the game: Enzyme vs React Testing Library: A Migration Guide.