Projeto Jogo da memória com React

Combinando React, Typescript, Vite e TailwindCSS vamos desenvolver um jogo da memória inspirado no Dragon Ball Z

Project preview

Vamos criar um jogo da memória? Que tal testar suas habilidades com uma combinação de React JS, Typescript, Vite e Tailwind CSS? Juntos, vamos desenvolver um jogo da memória inspirado em um dos animes mais icônicos de todos os tempos: Dragon Ball Z.

🤓 Antes de começar

Este mini projeto já contém todas as informações dos cards que serão utilizados no jogo, dentro do diretório /src/utils/data.ts. As imagens necessárias encontram-se no diretório /public/images. Sinta-se à vontade para utilizá-las ou substituí-las por outras imagens de sua preferência.

🔨 Requisitos

  • Utilize React JS + TypeScript + Vite + Tailwind CSS.
  • Crie uma tela inicial de login para armazenar o nome do jogador.
  • Crie uma tela de jogo exibindo um header e os cards.
  • O header deve exibir o nome do jogador e um timer contando os segundos.
  • Os cartões começam virados para baixo e, ao clicar neles, são revelados.
  • Se a próxima carta revelada combinar com o par, elas permanecem visíveis; caso contrário, a carta é virada novamente.

    👀 Dicas:

    • Busque reutilizar componentes.
    • Fique à vontade para utilizar qualquer gerenciador de estado.
    • Em dúvida sobre como criar animação das cartas? Dá uma olhadinha no React Card Flip.

🔨 Desafio extra para quem quer ir além

  • Quando todas as cartas forem selecionadas, o timer é interrompido e uma mensagem de resultado é exibida, juntamente com a opção de recomeçar o jogo por meio de um botão.
  • Crie uma página de erro 404 criativa que deve ser renderizada ao tentar acessar uma rota inexistente.

💻 Setup do projeto

O projeto com a estrutura inicial já estará disponível para você na branch principal do repositório. Sua responsabilidade será apenas implementar a lógica de acordo com o passo a passo acima.

🔍 Dicas

  • Estude sobre componentização, estados e passagem de props.
  • Estude sobre criação de rotas no React.
  • Estude sobre tipagem de dados com TypeScript.
  • Estude sobre Tailwind CSS e utilize com frequência a documentação.

🎨 Design Sugerido

Temos uma sugestão de design no Figma. Entretanto, fique à vontade para montar a aplicação conforme sua criatividade.

Figma

🔗 Link do design

👉🏽 Sobre esse mini-projeto

O que você irá aprender

  • Tecnologias:
    • React JS;
    • React Router Dom;
    • TypeScript;
    • Tailwind CSS;
    • React Card Flip;

Tutorial

Este tutorial será publicado em breve!

Disponível em breve

Junte-se a outras 8 pessoas que estão fazendo esse mini projeto.

Avatar do usuárioAvatar do usuárioAvatar do usuárioAvatar do usuárioAvatar do usuárioAvatar do usuárioAvatar do usuário