https://github.com/recheeduardo/vuedex
Uma PokĆ©dex moderna e interativa. desenvolvida com VueJS e alimentada pela PokeAPI! š“āŖ
https://github.com/recheeduardo/vuedex
api-forge bootstrap motion-vue pokeapi pokedex router-dom tabler-icons vuejs vuex
Last synced: 4 months ago
JSON representation
Uma PokĆ©dex moderna e interativa. desenvolvida com VueJS e alimentada pela PokeAPI! š“āŖ
- Host: GitHub
- URL: https://github.com/recheeduardo/vuedex
- Owner: RecheEduardo
- Created: 2025-04-07T23:28:29.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-04-12T01:49:00.000Z (about 1 year ago)
- Last Synced: 2025-07-28T21:45:48.693Z (11 months ago)
- Topics: api-forge, bootstrap, motion-vue, pokeapi, pokedex, router-dom, tabler-icons, vuejs, vuex
- Language: Vue
- Homepage: https://eduardo-pokedex.vercel.app
- Size: 1.86 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
**VueDex** é uma aplicação web desenvolvida com Vue.js 3, Bootstrap e Vitest, que simula uma Pokédex interativa e moderna. Ela consome dados da API oficial de pokémon PokéAPI para listar, filtrar e exibir detalhes completos dos Pokémon de forma responsiva, com animações suaves e acessibilidade garantida com internacionalização e interface amigÔvel.
---
# šø Demonstração


---
# š Tecnologias Utilizadas
## 
Framework JavaScript progressivo utilizado para construir a interface do projeto. O Vue.js 3 oferece reatividade avançada, composição de componentes e uma curva de aprendizado amigÔvel, ideal para criar interfaces ricas com facilidade.
## 
Na vuedex, o javascript é usado junto com typescript pra controlar o comportamento da aplicação, buscar e tratar os dados da pokéapi, gerenciar o estado global com vuex, controlar a navegação com vue router e aplicar animações com motion one. ele também é responsÔvel por lidar com eventos, lógica de exibição, filtros, e interações nos componentes vue, garantindo que a pokédex funcione de forma dinâmica e responsiva.
## 
Framework CSS utilizado para estilizar e tornar a interface da aplicação mais agradÔvel e responsiva. O Bootstrap facilita o design da aplicação, proporcionando uma interface limpa e consistente em dispositivos móveis e desktop sem a necessidade de criar CSS do zero. Ele inclui componentes como botões, formulÔrios, modais e grids, que são amplamente utilizados para garantir uma experiência de usuÔrio rica e adaptÔvel.
## 
Gerenciador de estado utilizado para compartilhar dados entre componentes. A VueDex usa Vuex para armazenar e atualizar a lista de Pokémon, filtros e configurações globais da aplicação.
## 
Biblioteca leve de animaƧƵes utilizada para aplicar transiƧƵes suaves entre componentes, especialmente nos cards de PokƩmon e pƔginas de detalhe.
---
# š¦ Bibliotecas Complementares
### **Vue Router** š
**Uso**: Gerencia as rotas da aplicação e navegação entre pÔginas.
**Funcionalidade**: Permite navegação entre lista de Pokémon, pÔgina de detalhes e pÔgina de erro personalizada.
### **i18n** š
**Uso**: Implementa suporte à internacionalização.
**Funcionalidade**: Exibe os nomes dos PokƩmon no idioma do usuƔrio, baseado nos dados da PokƩAPI.
### **PokĆ©API** š±āš
**Uso**: API pĆŗblica utilizada como fonte de dados oficial para o app!
**Funcionalidade**: Fornece todas as informaƧƵes dos PokƩmon: imagens, tipos, habilidades, descriƧƵes e mais.
---
# āļø Instalação e Execução
### 1. Clonar o repositório
```bash
git clone https://github.com/seuusuario/vuedex.git
cd vuedex
```
### 2. Instalar dependĆŖncias
```bash
npm install
```
### 3. Executar o projeto localmente
```bash
npm run dev
```
A aplicação estarĆ” disponĆvel em `http://localhost:5173`.
---
# š§© Funcionalidades
### **Scroll Infinito**:
- Os Pokémon são carregados aos poucos conforme o usuÔrio rola a tela, evitando sobrecarga na pÔgina (20 em 20).
##
### **Filtro por Tipo**:
- Filtre PokƩmon por tipo (Ɣgua, fogo, planta, etc.) diretamente na barra superior.
##
### **PƔgina de Detalhes**:
- Ao clicar em um Pokémon, o usuÔrio visualiza detalhes completos com animações em cadeia (nome, descrição, tipos, movimentos, jogos e evoluções).
##
### **AnimaƧƵes com Motion Vue**:
- As transições entre elementos são suaves e fluidas, melhorando a experiência do usuÔrio com sua componentização de animations.
##
### **Acessibilidade e Responsividade**:
- Projeto responsivo e com boas prƔticas de acessibilidade aplicadas, auxiliadas pelo layout do bootstrap.
##
### **Internacionalização (I18n) **:
- A VueDex traduz a pƔgina de descriƧƵes dos PokƩmon dinamicamente com base no idioma configurado.
---
# š Estrutura do Projeto
```
src/
āāā assets/ # Imagens, Ćcones e estilos globais
āāā components/ # Componentes reutilizĆ”veis (cards, filtros, loaders)
āāā views/ # PĆ”ginas principais (Home, Detail, Error)
āāā router/ # Configuração das rotas com Vue Router
āāā store/ # Gerenciamento de estado global com Vuex
āāā i18n/ # Internacionalização (idiomas)
āāā services/ # ServiƧos HTTP para consumo da PokĆ©API
āāā App.vue # Componente raiz da aplicação
```
---
# š¤ Contribuição
1. Faça um fork do repositório.
2. Crie um novo branch:
```bash
git checkout -b minha-funcionalidade
```
3. Commit suas alteraƧƵes:
```bash
git commit -m "Minha funcionalidade"
```
4. FaƧa o push para o branch:
```bash
git push origin minha-funcionalidade
```
5. Pronto! JĆ” pode abrir seu Pull Request.
---
š Ć isso! Caso tenha gostado do repositório, nĆ£o se esqueƧa de dar uma olhada no meu perfil ā¤