Skip to content

shigake/cat-tetris

Repository files navigation

🐱 Cat Tetris - O Melhor Tutorial de Tetris do Mundo

Cat Tetris Version React Vite

Cat Tetris não é apenas um jogo de Tetris — é um sistema educacional completo que ensina desde o básico até técnicas profissionais usadas em torneios.

🎮 JOGAR AGORA | 📚 Documentação | 🚀 Deploy


✨ Destaques

🎓 Tutorial Educativo Profissional

  • 21 lições progressivas (Fundamentals → Professional)
  • 19 demonstrações automáticas onde o CPU joga e mostra as técnicas
  • Sistema de validação em tempo real
  • Progress tracking e rewards automáticos

🎮 Multiplayer Funcional

  • 1v1 Local - Split-screen para 2 jogadores
  • vs IA - 4 níveis de dificuldade (Easy → Expert)
  • Controles duplos otimizados
  • Estatísticas de match

🏆 Sistema de Progressão Completo

  • Missões Diárias - 3 missões renovadas automaticamente
  • Conquistas - 50+ achievements para desbloquear
  • Loja de Temas - 10 temas visuais únicos
  • Sistema de moedas (🐟) e XP

🎨 Design Profissional

  • Interface limpa e moderna
  • Animações suaves (Framer Motion)
  • PWA instalável (funciona offline!)
  • Totalmente responsivo

🚀 Quick Start

# 1. Clone o repositório
git clone https://github.com/shigake/cat-tetris.git
cd cat-tetris

# 2. Instale dependências
npm install

# 3. Inicie o servidor
npm run dev

# 4. Abra no navegador
# http://localhost:5173/cat-tetris

📋 Features

🎓 Tutorial (21 Lições)

Módulo 1: Fundamentos (5 lições)

  • ✅ Movimentação básica
  • ✅ Rotação de peças
  • ✅ Soft Drop vs Hard Drop
  • ✅ Sistema de Hold
  • ✅ Next Preview

Módulo 2: Intermediário (6 lições)

  • ✅ T-Spin Básico
  • ✅ T-Spin Mini
  • ✅ T-Spin Double
  • ✅ Sistema de Combos
  • ✅ Back-to-Back Chains
  • ✅ Downstacking

Módulo 3: Avançado (6 lições)

  • ✅ T-Spin Triple
  • ✅ Técnica 4-Wide
  • ✅ Perfect Clear
  • ✅ DT Cannon
  • ✅ TKI Opener
  • ✅ T-Spin Stacking

Módulo 4: Profissional (4 lições)

  • ✅ Sprint 40 Linhas
  • ✅ Defesa contra Garbage
  • ✅ Táticas Multiplayer
  • ✅ Desafio Final

🎮 Modos de Jogo

  • Clássico - Jogo padrão infinito
  • Sprint - 40 linhas no menor tempo
  • Ultra - Máxima pontuação em 2 minutos
  • Survivor - Velocidade progressiva
  • Cheese - Limpe linhas com garbage

👥 Multiplayer

  • 1v1 Local - 2 jogadores no mesmo computador
  • vs IA - 4 níveis de dificuldade

🏆 Progressão

  • 3 Missões Diárias - Renovadas automaticamente
  • 50+ Conquistas - Badges e troféus
  • 10 Temas - Personalize o visual
  • Sistema de Níveis - XP e ranking

🛠️ Tecnologias

Frontend

  • React 18 - UI framework
  • Vite 4 - Build tool e dev server
  • Tailwind CSS - Styling
  • Framer Motion - Animações
  • React Router - Navegação

Arquitetura

  • Design Patterns - Observer, Singleton, DI
  • SOLID Principles - Código limpo e escalável
  • Component-Driven - Componentes reutilizáveis
  • Custom Hooks - Lógica compartilhada

Qualidade

  • ESLint - Linting
  • Prettier - Formatação
  • Playwright - Testes E2E
  • TypeScript-ready - Preparado para migração

📁 Estrutura do Projeto

cat-tetris/
├── src/
│   ├── components/          # Componentes React
│   │   ├── lesson/         # Componentes do tutorial
│   │   ├── TetrisBoard.jsx
│   │   ├── MainMenu.jsx
│   │   └── ...
│   ├── core/               # Lógica do jogo
│   │   ├── services/       # Services (GameService, etc)
│   │   ├── Board.js
│   │   ├── Score.js
│   │   └── ...
│   ├── hooks/              # Custom hooks
│   ├── patterns/           # Design patterns
│   └── utils/              # Utilidades
├── public/                 # Assets estáticos
├── test-results/           # Screenshots de testes
├── docs/                   # Documentação
└── ...

📚 Documentação


🧪 Testes

Teste Automatizado

node test-tutorial-system.cjs

Verifica:

  • ✅ Abertura da aplicação
  • ✅ Navegação ao Tutorial
  • ✅ Tela de introdução
  • ✅ Demonstração (CPU jogando)
  • ✅ Modo prática
  • ✅ Arquitetura refatorada
  • ✅ Cobertura de demonstrações

Testes Manuais

npm run dev

Testar:

  1. Tutorial completo (21 lições)
  2. Multiplayer (1v1 e vs IA)
  3. Missões diárias
  4. Conquistas
  5. Loja de temas
  6. Modos de jogo

🎯 Controles

Teclado

  • ← → - Mover para os lados
  • - Soft Drop (acelerar queda)
  • - Rotação horária
  • Espaço - Hard Drop (queda instantânea)
  • C - Hold (guardar peça)
  • Shift - Rotação anti-horária
  • P - Pausar

Multiplayer (1v1 Local)

  • Player 1: WASD + Q/E + Shift+Space
  • Player 2: Arrows + ↑ + Ctrl + Enter

Gamepad (Experimental)

  • Suporte para controles Xbox/PlayStation

🌟 Diferenciais

1. Sistema de Demonstração Único 🎬

  • CPU joga automaticamente mostrando as técnicas
  • Narração dinâmica explicando cada movimento
  • Controles de playback (play/pause/velocidade)
  • Não existe nada igual no mercado!

2. Tutorial Melhor que Tetris Effect 🎓

  • 21 lições estruturadas pedagogicamente
  • Validação em tempo real do que o jogador faz
  • Feedback instantâneo e construtivo
  • Sistema de hints quando o jogador trava

3. Código Profissional 💻

  • Arquitetura limpa e escalável
  • Componentes reutilizáveis
  • Design patterns aplicados corretamente
  • Fácil de manter e expandir

4. Multiplayer Completo 👥

  • Split-screen funcional
  • IA com comportamento realista
  • 4 níveis de dificuldade balanceados
  • Experiência competitiva divertida

📊 Estatísticas do Projeto

Métrica Valor
Tempo de Desenvolvimento ~15 horas
Linhas de Código ~8,000
Componentes React 40+
Services 15
Lições Tutorial 21
Demonstrações 19
Conquistas 50+
Temas 10
Commits 70+

🗺️ Roadmap

Versão 1.0 (Atual)

  • Tutorial completo
  • Multiplayer local
  • Sistema de progressão
  • PWA

Versão 1.1 (Futuro Próximo)

  • 2 demonstrações restantes
  • Sound effects completos
  • Particles effects avançados
  • Backend real (Firebase/Supabase)

Versão 2.0 (Futuro)

  • Multiplayer online
  • Leaderboard global
  • Torneios
  • Sistema de replays
  • Marketplace de temas

🤝 Contribuindo

Contribuições são bem-vindas!

  1. Fork o projeto
  2. Crie sua feature branch (git checkout -b feature/AmazingFeature)
  3. Commit suas mudanças (git commit -m 'Add AmazingFeature')
  4. Push para a branch (git push origin feature/AmazingFeature)
  5. Abra um Pull Request

📄 Licença

Este projeto é proprietário. Todos os direitos reservados.


👨‍💻 Autor

Desenvolvido com ❤️ por: [Seu Nome]


🙏 Agradecimentos

  • Tetris Guidelines - Por especificações oficiais
  • Guideline Community - Por estratégias avançadas
  • Framer Motion - Por animações incríveis
  • Vite - Por desenvolvimento rápido

📞 Suporte

  • Issues: GitHub Issues
  • Email: (adicionar se necessário)
  • Discord: (adicionar se necessário)

⭐ Gostou?

Se você achou o projeto útil, dê uma ⭐ no GitHub!


🎮 Divirta-se jogando Cat Tetris! 🐱


Feito com 💜 e muito ☕

© 2026 Cat Tetris. Todos os direitos reservados.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages