/navedex

Navedex é a plataforma para visualização, criação, edição e exclusão de Navers, desenvolvida como desafio para a posição de Desenvolvedor Front End na Nave

Primary LanguageTypeScript

Desafio Navedex

GitHub top language GitHub language count Repository size GitHub last commit

Screenshot from 2020-08-26 23-46-33

You can access the English documentation by clicking here.

Sobre o desafio

O sistema consiste em uma web app com fluxo de autenticação e CRUD dos navers, possuindo informações como: nomes, idades, cargos, tempo de empresa e projetos que participou.

Tecnologias utilizadas

  • TypeScript - TypeScript é um superconjunto tipado de JavaScript que compila para JavaScript simples.
  • React - Uma biblioteca JavaScript para criar interfaces de usuário.
  • Styled Components - Primitivos visuais para a idade do componente. Use os melhores bits de ES6 e CSS para estilizar seus aplicativos sem estresse.
  • Formik - Formik é a biblioteca de formulários de código aberto mais popular do mundo para React e React Native.
  • Yup - Yup é um construtor de esquema JavaScript para análise e validação de valor.
  • Moment.js - Analisar, validar, manipular, e exibir datas e horas em JavaScript.

Utilização

Credenciais para acesso:

email: ricky@nave.rs
password: nave1234

O projeto está hospedado e pode ser acessado em https://navedex-rickyalmeida.vercel.app

Inicializando

Pré-requisitos

Para executar este projeto localmente, você precisará:

Instalação

  1. Clone o repositório:
git clone https://github.com/rickyalmeidadev/desafio-reactjs-frontend
  1. Instale os pacotes:
yarn install

or

npm install
  1. Execute a aplicação:
yarn start

or

npm start
  1. Certifique-se de que a seguinte porta esteja disponível:
PORT: 3000.
  1. Acesse a aplicação por meio do link a seguir após executar as etapas de 1 a 4:
http://localhost:3000/

Recursos (bônus)

  • Para navers sem imagem ou imagem quebrada, foi implementado um placeholder como alternativa;
  • Durante os carregamentos foram usados loaders e esqueletos com efeito shimmer;
  • Design responsivo para resoluções a partir 320px de largura;
  • Campos de idade e tempo de empresa foram alterados para campos de data, afim de causar uma melhor experiência do usuário;
  • Validação de todos os inputs com messagens personalizadas de feedback utilizando a biblioteca Yup.
  • Uso da Context API para gerenciamento de estado.

Autor

Feito com ❤️ por Ricky Almeida - email - linkedin