Skip to content
This repository has been archived by the owner on May 2, 2023. It is now read-only.

Alquipo/GoStack12-Desafio-08-GoMarketplace

Repository files navigation

GoStack

GitHub language count Repository size Made by Alquipo GitHub last commit License

ReactNative

Desafio 08: GoMarketplace Mobile

🚀 Sobre o desafio

Nesse desafio, tive que desenvolver uma nova aplicação, a GoMarketplace. Dessa vez foi a hora de colocar na praticar o que eu aprendi até agora no React Native junto com o TypeScript, utilizando rotas, Async Storage e a Context API.

Test

🎨 Layout

Original Original

Original

🔨 Tecnologias:

🚀 Como rodar este projeto

Para clonar e executar este aplicativo, você precisará de Git, NodeJs Instalado em seu computador.

🌀 Clonando o repositório

# Clone este repositório
$ git clone https://github.com/Alquipo/GoStack12-Desafio-08-GoMarketplace

# Acesse a pasta do projeto no terminal/cmd
$ cd GoStack12-Desafio-08-GoMarketplace

📱 Rodando a aplicação Mobile

# Instale as dependências
$ yarn

# Instale as dependências IOS (somente se for usar IOS)
$ cd ios
$ pod install

# Execute a Aplicação Android (somente se for usar Android)
$ yarn android

# Execute a Aplicação IOS (somente se for usar IOS)
$ yarn ios

# Execute o teste da Aplicação
$ yarn test

# Execute a API Fake
$ yarn json-server server.json -p 3333 -H (Ip da sua maquina)

# O servidor inciará na porta:3333 - acesse http://localhost:3333

🛠 Funcionalidades da aplicação

  • Listar os produtos da fake API: Sua página Dashboard deve ser capaz de exibir uma listagem através de uma tabela, com os campos title, image_url e price.

  • Adicionar itens ao carrinho: Em toda sua aplicação, você deve utilizar o Contexto chamado cart que deixamos disponível. Você vai precisar completar as funcionalidades dentro de hooks/cart.tsx para que você consiga adicionar itens ao carrinho.

  • Exibir itens do carrinho: Na página Cart você deve exibir todos os itens do carrinho, junto com a quantidade, valor único, valor subtotal dos itens e total de todos os items.

  • Aumentar quantidade de itens do carrinho: Na página Cart você deve permitir que o usuário aumente a quantidade de itens do mesmo produto, para isso você pode utilizar a função increment dentro do seu contexto em /src/hooks/cart.tsx.

  • Diminuir quantidade de um item do carrinho: Na página Cart você deve permitir que o usuário decremente a quantidade de itens do mesmo produto, para isso você pode utilizar a função decrement dentro do seu contexto em /src/hooks/cart.tsx.

  • Exibir valor total dos itens no carrinho: Tanto na página Dashboard, tanto na página Cart você deve exibir o valor total de todos os itens que estão no seu carrinho.

🤔 Como contribuir para o projeto

  • Faça um fork do projeto;
  • Crie uma nova branch com as suas alterações: git checkout -b my-feature
  • Salve as alterações e crie uma mensagem de commit contando o que você fez:git commit -m "feature: My new feature"
  • Envie as suas alterações: git push origin my-feature

Caso tenha alguma dúvida confira este guia de como contribuir no GitHub

📝 Licença

Este projeto esta sobe a licença MIT. Veja a LICENÇA para saber mais.

Feito com ❤️ por Alquipo Neto 👋🏽 Entre em contato!