Uma aplicação web moderna e interativa para explorar o universo Pokémon, construída com PHP, Twig e integração com a PokéAPI.
- 🎯 Pokédex Completa: Navegue por todos os Pokémons com informações detalhadas
- 🔍 Busca Avançada: Encontre Pokémons por nome, tipo ou número
- ❤️ Coleção Pessoal: Salve seus Pokémons favoritos
- 🎮 Mini Game: Jogo interativo "Quem é esse Pokémon?"
- 📖 Detonado Digital: Guia completo em PDF
- 📱 PWA Ready: Instale como aplicativo no seu dispositivo
- 🌐 URLs Amigáveis: Navegação sem extensões
.php
- ⚡ Interface Responsiva: Funciona em desktop, tablet e mobile
- PHP 8+: Backend e lógica de negócio
- Twig 3: Engine de templates
- Bootstrap 5: Framework CSS responsivo
- jQuery: Manipulação DOM e AJAX
- PokéAPI: API externa para dados dos Pokémons
- PWA: Progressive Web App
- PHP 8.0+ com extensões:
curl
(para requisições à PokéAPI)json
(para processamento de dados)
- Composer (gerenciador de dependências)
- Servidor Web (Apache/Nginx) com suporte a:
.htaccess
(Apache) ou configuração equivalentemod_rewrite
habilitado
git clone https://github.com/paulowh/pokeapi.git
cd pokeapi
composer install
Certifique-se de que o servidor web esteja configurado para:
- Suportar
.htaccess
(Apache) - Ter
mod_rewrite
habilitado - Apontar para a pasta do projeto
http://localhost/pokeapi
pokeapi/
├── 📄 index.php # Página principal (Pokédex)
├── 🔍 search-pokemon.php # Busca detalhada de Pokémons
├── 📝 pokemon-detalhes.php # Página de detalhes do Pokémon
├── ❤️ meus-pokemon.php # Coleção pessoal de Pokémons
├── 🎮 mini-game.php # Mini game "Quem é esse Pokémon?"
├── 📖 detonado.php # Detonado digital em PDF
├── 🔧 render.php # Renderizador de templates AJAX
├── 📱 manifest.json # Configuração PWA
├── 🎛️ .htaccess # Regras de URL amigáveis
├── 📦 composer.json # Dependências do projeto
│
├── 📂 public/ # Assets públicos
│ ├── 🎨 css/
│ │ ├── bootstrap.min.css # Framework CSS
│ │ └── style.css # Estilos customizados
│ ├── 💻 js/
│ │ ├── pokedex.js # Lógica principal da Pokédex
│ │ └── pokemon-detalhes.js # Interações da página de detalhes
│ └── 🖼️ img/
│ ├── icons/ # Ícones dos tipos Pokémon
│ └── pdf/ # Arquivos PDF
│
├── 📂 src/ # Código fonte
│ ├── 🔧 core.php # Configurações e funções principais
│ ├── 📂 controllers/ # Controladores (futuro)
│ └── 📂 templates/ # Templates Twig
│ ├── header.php # Cabeçalho comum
│ ├── pokemon-card.twig # Card de Pokémon
│ ├── pokemon-detalhes.twig # Página de detalhes
│ ├── pokemon-ficha.twig # Ficha resumida
│ ├── meu-time-pokemon.twig # Lista pessoal
│ └── detonado.twig # Template do detonado
│
└── 📂 vendor/ # Dependências Composer
└── twig/ # Engine de templates
- Lista paginada de todos os Pokémons
- Busca rápida por nome ou número
- Cards informativos com imagem e tipos
- Navegação intuitiva
- Informações completas: stats, tipos, habilidades
- Cadeia evolutiva interativa
- Fraquezas e resistências
- Navegação por teclado (setas, Escape)
- Sistema de favoritos local
- Gerenciamento da coleção pessoal
- Persistência no localStorage
- Jogo "Quem é esse Pokémon?"
- Sistema de pontuação
- Dificuldade progressiva
- Guia completo em PDF
- Download direto
- Informações estratégicas
O projeto utiliza .htaccess
para URLs sem extensão:
- ✅
/pokemon-detalhes?id=1
- ❌
/pokemon-detalhes.php?id=1
Configure o manifest.json
para personalizar:
- Nome da aplicação
- Ícones
- Cores do tema
- Modo de exibição
A aplicação consome a PokéAPI:
- Cache inteligente de requisições
- Tratamento de erros robusto
- Timeout configurável
- Verifique se
mod_rewrite
está habilitado - Confirme as permissões do arquivo
.htaccess
- Verifique a conexão com a internet
- Confirme se o
curl
está habilitado no PHP
- Execute
composer install
- Verifique as permissões da pasta
vendor/
- Fork o projeto
- Crie uma branch para sua feature (
git checkout -b feature/AmazingFeature
) - Commit suas mudanças (
git commit -m 'Add some AmazingFeature'
) - Push para a branch (
git push origin feature/AmazingFeature
) - Abra um Pull Request
Este projeto está sob a licença MIT. Veja o arquivo LICENSE
para mais detalhes.
Desenvolvido com ❤️ por Paulo