https://github.com/mairess/project-starwars-planets-search
Esse projeto é uma lista com filtros de planetas do universo Star Wars, aqui utilizei context api e hooks para controlar os estados globais da aplicação. Para testá-la utilizei vitest e react testing library.
https://github.com/mairess/project-starwars-planets-search
context-api custom-hooks hooks react react-hooks react-testing-library typescript vitest
Last synced: 16 days ago
JSON representation
Esse projeto é uma lista com filtros de planetas do universo Star Wars, aqui utilizei context api e hooks para controlar os estados globais da aplicação. Para testá-la utilizei vitest e react testing library.
- Host: GitHub
- URL: https://github.com/mairess/project-starwars-planets-search
- Owner: mairess
- Created: 2023-11-28T13:58:05.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-04-23T21:16:43.000Z (10 months ago)
- Last Synced: 2024-12-11T14:12:34.552Z (2 months ago)
- Topics: context-api, custom-hooks, hooks, react, react-hooks, react-testing-library, typescript, vitest
- Language: TypeScript
- Homepage: https://project-starwars-planets-search-three.vercel.app/
- Size: 512 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
#
Projeto Star Wars Planets Search
## Contexto
Esse projeto consiste em uma lista de planetas do universo Star Wars, equipada com `filtros`. Para gerenciar os estados globais, são utilizados `Context API`, `Hooks` e `Custom Hooks`. Essas tecnologias permitem um controle eficiente dos estados, facilitando a implementação de filtros e proporcionando uma experiência de usuário mais dinâmica e interativa. Os testes foram escritos `vitest` e `react testing library`. Nessa aplicação é possível adicionar e remover os filtros além de poder ordenar a lista e fazer uma busca pelo nome.
Rode o projeto localmente
> ⚠️ É preciso ter o [Node](https://nodejs.org/en) instalado em sua máquina.
Clone o repositório:
```SHELL
git clone [email protected]:mairess/project-starwars-planets-search.git
```Instale as dependências:
```SHELL
npm install
```Inicie o vite server:
```SHELL
npm run dev
```### Os testes
Rode os testes com:
```SHELL
npm test
```Rode a cobertura dos testes:
```SHELL
npm run coverage
```Rode o projeto com o docker
> ⚠️ É preciso ter o [Docker](https://www.docker.com/get-started/) instalado em sua máquina.
Clone o repositório:
```SHELL
git clone [email protected]:mairess/project-starwars-planets-search.git
```Suba o container:
```SHELL
docker compose up -d
```O vite server estará disponível na porta `3000`:
```HTML
http://localhost:3000
```Rode os testes
Rode os testes com:
```SHELL
npm run test
```Rode a cobertura:
```SHELL
npm run coverage
```## Competências desenvolvidas
- Capacidade de utilizar `Context API` para gerenciar o estado.
- Capacidade de utilizar React Hook `useContext`.
- Capacidade de criar `custom hooks`.
- Capacidade para testar e garantir uma boa cobertura de testes.
- Capacidade de `testar` a aplicação.