GithubHelp home page GithubHelp logo

desafio-frontend-memudei's Introduction

Desafio-Frontend

Bem-vindo

Olá, seja bem-vindo ao desafio de frontend da Memudei. Este desafio tem como objetivo avaliar seus conhecimentos em HTML, CSS e Javascript e como você estrutura seu código.

Instruções

  • Faça um fork deste repositório.
  • Crie uma branch com seu nome-sobrenome.
  • Quando estiver pronto, faça um pull request para a branch master deste repositório.
  • Não se esqueça de atualizar o README com as instruções para rodar o projeto.
  • Envie um email para [email protected].
  • Você tem até o dia 29/09/2023 para concluir o desafio.
  • Enquanto estiver trabalhando no desafio, não se esqueça de fazer commits com mensagens claras e objetivas (lembre-se que o commit é a documentação do seu código).
  • Enviaremos o feedback sobre o seu desafio por email em até 7 dias úteis após o envio do pull request.
  • Caso tenha alguma dúvida, entre em contato comigo através dos canais de comunicação abaixo.

O desafio

Vamos dar uma olhada na previsão do tempo? A meta é criarmos uma página simples, que consuma a API do Open Weather de previsão do tempo (https://openweathermap.org/api/one-call-3). Não se preocupe caso não consiga consumir a API, vamos avaliar o código, a estrutura do projeto e o layout. (Dica: você pode usar o https://www.mockapi.io/ para simular uma API). O layout final deverá ficar o mais próximo possível da versão abaixo (sim, vamos ter a versão responsiva mobile e a versão desktop):

Web:

alt tag

alt tag

Mobile responsivo:

alt tag

alt tag

O que esperamos

  • A consistência dos commits, com mensagens claras e objetivas (lembre-se que o commit é a documentação do seu código);
  • A evolução do seu trabalho (vá fazendo commits conforme for progredindo no desafio);
  • A estrutura do projeto (arquivos, pastas, etc);
  • A estrutura do código;
  • A aplicação de boas práticas de programação;
  • O layout final (o mais próximo possível do layout proposto);
  • A responsividade (o layout deve se adaptar para dispositivos móveis);

Para ir além

  • TypeScript;
  • variáveis de ambiente (dotenv, etc);
  • criação de componentes reutilizáveis;
  • Testes unitários e end-to-end (Jest, Cypress, etc);
  • biblioteca web (React, Angular, Vue, etc);
  • biblioteca de internacionalização (i18n, react-intl, etc);
  • biblioteca de UI ou framework CSS (Material UI, Tailwind, Bootstrap, etc);
  • aplique o conceito de mobile first;
  • aplique o conceito de atomic design;
  • aplique o conceito de clean architecture;
  • ferramenta de linting (ESLint, Prettier, etc);
  • state management (Redux, Mobx, Zustand, etc);
  • validação de formulário (Formik, React Hook Form, etc);
  • biblioteca de validação (Yup, Joi, Zod, etc);
  • biblioteca de animação (Framer Motion, React Spring, etc);
  • Deploy da aplicação (Heroku, Netlify, Vercel, etc);
  • Deploy da aplicação em um container (Docker, etc);
  • CI/CD (Github Actions, CircleCI, etc);
  • analisadores de código (SonarQube, Code Climate, etc);
  • biblioteca de tipagem (PropTypes, TypeScript, etc);
  • biblioteca de gerenciamento de side effects (Redux Saga, Redux Thunk, etc);
  • biblioteca de gerenciamento de rotas (React Router, Reach Router, etc);

Canais de comunicação

Você pode entrar em contato comigo através dos canais abaixo caso tenha alguma dúvida ou queira agendar uma call para conversarmos sobre o desafio.

desafio-frontend-memudei's People

Contributors

urieloliveira avatar

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.