1 min read

Build a memory game

Build a memory game

Build a memory game in React.

You start with 6 images that you will display as 12 cards. By default, they are "flipped" - you only get a placeholder instead of the image.

As the user clicks a "card", flip it around, revealing the image.
When the user clicks the same picture twice, in a row, then it means he has a match - so keep the images visible from then onwards.

You can build the game as a React component that takes in an array of images.

Here's an example of how it will be used - you can use this image array for testing:

<MemoryGame
   images={[
        "https://images.unsplash.com/photo-1626808642875-0aa545482dfb",
        "https://images.unsplash.com/photo-1546842931-886c185b4c8c",
        "https://images.unsplash.com/photo-1520763185298-1b434c919102",
        "https://images.unsplash.com/photo-1442458017215-285b83f65851",
        "https://images.unsplash.com/photo-1496483648148-47c686dc86a8",
        "https://images.unsplash.com/photo-1591181520189-abcb0735c65d",
   ]}
/>

To shuffle the images, you can use the lodash library, which has a handy shuffle method (https://www.geeksforgeeks.org/lodash-_-shuffle-method/)

Share a link to your solution in the comments below!

To get started, you can clone the starter repo.

When you're ready to check your work, take a look at the official solution.

Note: You'll notice the UI is very basic, without any animations or shadows - it's because the focus on this exercise is on the React part. If you want, feel free to add a nicer UI!

0:00
/0:08

Get a new challenge in your inbox every other week.

Learn React by practice. Get out of tutorial hell and finally be able to just build things.