GithubHelp home page GithubHelp logo

luk4x / copa-mobile Goto Github PK

View Code? Open in Web Editor NEW
2.0 2.0 0.0 2 MB

⚽ NLW Copa Mobile Interface - A Mobile Application for Copa Web Interface | React Native, NativeBase, Phosphor...

License: MIT License

TypeScript 98.13% JavaScript 1.84% Shell 0.03%
axios country-flags country-list dayjs dotenv expo mobile native-base react-native react-native-safe-area-context

copa-mobile's Introduction

🇺🇸 English
🇧🇷 Português

luk4x-repo-status luk4x-repo-license

⚽ Copa Project Mobile Interface


Vídeo   |    Tecnologias   |    Sobre   |    Telas   |    Componentes   |    Clone   |    Contato


📹 Apresentação em Vídeo do Projeto

copa-mobile-video.1.mp4

Caso o vídeo apresente algum erro, recarregue a página!

🚀 Tecnologias utilizadas

📝 Sobre

Assistir o vídeo acima ajudará na compreensão da explicação!

Esse projeto é a Interface Mobile da Copa, uma aplicação temática da copa do mundo que realiza o cadastro e a gerência de bolões, jogos e usuários, desenvolvida durante a trilha Ignite da NLW Copa da Rocketseat.
Os dados são fornecidos pela sua API desenvolvida essencialmente com Fastify.

📄 Telas

O projeto é composto por 5 componentes de tela, sendo eles:

  • SignIn: Além de ser a tela inicial, nela o usuário deve se cadastrar no App, e utilizo o sistema de autenticação do Google para tal.
  • Pools: Essa tela é responsável por listar todos os bolões que o usuário criou e/ou participa.
  • New: Essa tela é responsável pela criação de um bolão.
  • Find: Essa tela é responsável pela busca de um bolão por seu código. Caso o bolão seja encontrado, você se tornará participante dele automaticamente.
  • Details: Essa tela é responsável por mostrar os detalhes de um bolão: Quem o criou, quantos participam dele e quais jogos ele tem. Você também pode dar palpites nesses jogos e acessar seu Ranking.

📑 Demais Componentes

O projeto conta com mais 16 componentes que são reaproveitados pela aplicação, sendo eles:

  • Button: Esse componente é relativo ao botão de destaque que se repete nas telas da aplicação. Ele tem o modo PRIMARY e SECONDARY.
  • ButtonIcon: Esse componente é relativo a qualquer botão que seja apenas um ícone que se repete no Header da aplicação.
  • EmptyMyPoolList, EmptyPoolList, EmptyRankingList: Esses componentes são relativos às suas respectivas listas, mostrados quando elas estão vazias.
  • Flag, Team: Esses componentes são relativos aos ícones das bandeiras dos países na tela de Details.
  • Game: Esse componente é relativo aos jogos na tela de Details.
  • Guesses: Esse componente retorna a lista de jogos(Games) na tela de Details.
  • Header: Esse componente é relativo ao cabeçalho que se repete nas telas da aplicação.
  • Input: Esse componente é relativo aos Inputs que se repetem nas telas da aplicação.
  • Loading: Esse componente é relativo ao efeito de carregamento, usado para aguardar requisições.
  • Option: Esse componente é relativo às opções de lista na tela de Details.
  • Participants: Esse componente é responsável por exibir os participantes de um bolão, utilizado no PoolHeader.
  • PoolHeader: Esse componente é responsável por exibir os dados do bolão na tela de Details.
  • PoolCard: Esse componente é responsável por exibir os dados do bolão resumidos e em um card, como utilizados na tela de Pools.

Destaco mais 3 componentes que desempenham um papel fundamental na aplicação:

  • AuthContext e useAuth: São respectivamente, o contexto que guarda informações do usuário, e o hook criado para utilizá-lo de forma simplificada. Eles são responsáveis por deixar as informações do usuário acessíveis pela aplicação.
  • api: Criado com o auxílio do axios, esse componente guarda a URL base da API que fornece os dados para o projeto.

📖 Clonando o Projeto

Para clonar e executar este projeto em seu computador, você precisará do Git e Node.js v18.12.0 ou superior previamente instalados.
Você também precisará da API do projeto rodando, portanto, antes de continuar por aqui, vá ao Repositório da API e faça os passos sobre como cloná-la e executá-la primeiro!
Feito esses dois passos, no terminal:

# Clone esse repositório com:
> git clone https://github.com/Luk4x/copa-mobile

# Entre no repositório com:
> cd copa-mobile

# Instale as dependências com:
> npm install

# Execute o projeto com:
> npx expo start

# Feito isso, você já poderá acessar o projeto pelo seu celular com QR Code que aparecerá no terminal! (ou por um link como: exp://192.168.0.112:19000)

🤝 Contato dos Contribuintes

Vitrine.Dev 🪟
Luk4x Github Photo
Lucas Maciel
🪧 Vitrine.Dev Lucas Maciel
✨ Nome ⚽ Copa Mobile Interface
🏷️ Tecnologias react native, typescript, nativebase, phosphor, react navigation, dotenv, country list, axios, dayjs, expo, react native svg, react native safe area context, react native screens, react native country flag, npm
📷 Img vitrine.dev thumb

Voltar ao Topo

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.