React Hooks Tutorial [Build a Tic-Tac-Toe Game] - Full Course
๐ View our courses: https://scrimba.com/links/all-courses
Build Tic-Tac-Toe with React Hooks with Thomas Weibenfalk
๐ป Full interactive course on Scrimba: https://rebrand.ly/greactgame
In this course, we're going to have some fun building a Tic Tac Toe game with modern React. The example is pulled from React's official tutorials, but instead of doing the old way, we'll use React Hooks.
Knowing React Hooks is a critical skill for any React developer who aims to work with modern codebases, and this course will teach it to in a fun way and quick way!
The course assumes you know basic React beforehand. If you've gone through our Learn React For Free course (https://scrimba.com/g/glearnreact), you'll be well equipped to tackle this one.
๐ Check out Thomas's courses:
https://www.weibenfalk.com/
โก Contents โก
00:00:00 - Introduction
00:02:49 - Scaffolding Components
00:05:53 - Square Component & destructuring props
00:10:05 - Board Component and scaffolding functions
00:16:17 - Square Styling
00:18:53 - Board Styling
00:22:28 - calculateWinner function explained
00:26:21 - Create states and fill with initial data
00:31:47 - Create the handleClick function
00:35:42 - renderMoves function and the last JSX
00:40:54 - BONUS: Implement Time Travel
--
๐ซ We are looking for teachers! https://rebrand.ly/become-scrimba-teacher
๐ We also blog! Follow our articles: https://dev.to/scrimba
๐ฌ Join the Scrimba community chat: https://rebrand.ly/scrimba_discord
Watch on YouTube โ
(saves to browser)
Sign in to unlock AI tutor explanation ยท โก30
Playlist
Uploads from Scrimba ยท Scrimba ยท 0 of 60
โ Previous
Next โ
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
CSS Grid Course: Learn the Basics in 3 Minutes
Scrimba
CSS Grid Course: Positioning Items
Scrimba
CSS Grid Course: Why Learn It And How It Compares To Bootstrap
Scrimba
CSS Grid Course: auto-fit & minmax
Scrimba
CSS Grid Course: Implicit Rows
Scrimba
CSS Grid Course: Fraction Units And Repeat
Scrimba
CSS Grid Course: Justify Items and Align Items
Scrimba
CSS Grid Course: An Awesome Image Grid
Scrimba
CSS Grid Course: Named Lines
Scrimba
CSS Grid Course: auto-fit vs auto-fill
Scrimba
CSS Grid Course: Justify Content and Align Content
Scrimba
CSS Grid Course: Template areas
Scrimba
27. Setting up the structure - Responsive CSS Tutorial
Scrimba
25. Making the navigation responsive - Responsive CSS Tutorial
Scrimba
36. Playing with the title's position and negative margins - Responsive CSS Tutorial
Scrimba
31. Starting the CSS for our page - Responsive CSS Tutorial
Scrimba
26. Taking a look at the rest of the project - Responsive CSS Tutorial
Scrimba
15. Spacing out the columns - Responsive CSS Tutorial
Scrimba
33. Starting to think mobile first - Responsive CSS Tutorial
Scrimba
22. Making our navigation look good - Responsive CSS Tutorial
Scrimba
37. Changing image size with object-fit - Responsive CSS Tutorial
Scrimba
44. Module Wrap up - Responsive CSS Tutorial
Scrimba
16. Controlling the vertical position of flex items - Responsive CSS Tutorial
Scrimba
39. Setting up the widgets and talking breakpoints - Responsive CSS Tutorial
Scrimba
42. Setting up the About Me page - Responsive CSS Tutorial
Scrimba
35. Changing the visual order with flexbox - Responsive CSS Tutorial
Scrimba
23. Adding the underline - Responsive CSS Tutorial
Scrimba
21. Using flexbox to start styling our navigation - Responsive CSS Tutorial
Scrimba
20. Creating a navigation - Responsive CSS Tutorial
Scrimba
40. Using a new pseudo class to wrap up the homepage - Responsive CSS Tutorial
Scrimba
43. Fixing up some loose ends - Responsive CSS Tutorial
Scrimba
32. Starting the layout. Looking at the big picture - Responsive CSS Tutorial
Scrimba
24. A more complicated navigation - Responsive CSS Tutorial
Scrimba
28. Feature article structure - Responsive CSS Tutorial
Scrimba
34. Styling the featured article - Responsive CSS Tutorial
Scrimba
18. Making layout responsive with flex direction - Responsive CSS Tutorial
Scrimba
19. flex direction explained - Responsive CSS Tutorial
Scrimba
41. Creating the recent posts page - Responsive CSS Tutorial
Scrimba
17. Media Query basics - Responsive CSS Tutorial
Scrimba
30. Home Page. HTML for the aside - Responsive CSS Tutorial
Scrimba
38. Styling recent articles for large screens - Responsive CSS Tutorial
Scrimba
29. The home page. HTML for the recent articles - Responsive CSS Tutorial
Scrimba
10. ems and rems an example - Responsive CSS Tutorial
Scrimba
1. Starting to think responsively - Responsive CSS Tutorial
Scrimba
4. Controlling the width of images - Responsive CSS Tutorial
Scrimba
5. min width and max width - Responsive CSS Tutorial
Scrimba
3 CSS Units. Percentage - Responsive CSS Tutorial
Scrimba
11. Flexbox refresher and setting up some HTML - Responsive CSS Tutorial
Scrimba
12. Basic Styles and setting up the columns - Responsive CSS Tutorial
Scrimba
8. The Solution Rems - Responsive CSS Tutorial
Scrimba
14. Setting the columns widths - Responsive CSS Tutorial
Scrimba
2 CSS Units - Responsive CSS Tutorial
Scrimba
7. The problem with ems - Responsive CSS Tutorial
Scrimba
6. CSS Units. The em unit - Responsive CSS Tutorial
Scrimba
13. Adding the background color - Responsive CSS Tutorial
Scrimba
9. Picking which unit to use - Responsive CSS Tutorial
Scrimba
Tutorial to Learn Alpine JS - Full Course for Beginners
Scrimba
Guide To Algorithms in Javascript [Binary Search] - Full Course / Tutorial
Scrimba
Learn UI Design [7 Fundamentals Tutorial] - Full Course for Beginners
Scrimba
Javascript Tutorial for Beginners [From 0 to ES6+] - Full Course
Scrimba
Related AI Lessons
โก
โก
โก
โก
7 AI Tools That Pay You to Use Them in 2025 (With Proof)
Dev.to AI
Stop Yelling at Your AI โ It Canโt Hear You
Medium ยท AI
I Automated 90% Of The Ethers.js v5 โ v6 Migration Using Codemods and AI
Medium ยท JavaScript
From AI Scan to Legal Plan: When to Escalate Your Patent Analysis
Dev.to AI
Chapters (11)
Introduction
2:49
Scaffolding Components
5:53
Square Component & destructuring props
10:05
Board Component and scaffolding functions
16:17
Square Styling
18:53
Board Styling
22:28
calculateWinner function explained
26:21
Create states and fill with initial data
31:47
Create the handleClick function
35:42
renderMoves function and the last JSX
40:54
BONUS: Implement Time Travel
๐
Tutor Explanation
DeepCamp AI