/mLabs

Teste técnico para vaga de Front End Jr

Primary LanguageTypeScript

Mlabs desafio técnico Front End Jr

Aplicação para agendar postagens em redes sociais.
Link da demo: nervous-montalcini-83c7ae.netlify.app/

Projeto Overview / Work Flow

Comecei esse projeto organizando a estrutura básica de pastas e arquivos de acordo com o design. Na sequência, fiz o import de alguns assets do Figma e adicionei alguns estilos globais. Desenvolvi a página inicial completa por ser simples, a navegação entre páginas e montei o esqueleto base das páginas. Depois de separar os componentes, fiz o layout base e sua responsividade. Adicionei a ContextAPI porque o layout é bem componentizado, tendo acesso aos dados do post a ser agendado. Depois de ter esses dados, adicionei o Redux para gerenciar o estado dos posts agendados.

Projeto bem simples que exije um certo nível de conhecimento técnico para executar. Uma funcionalidade que adicionei foi a validação na data e hora com RegEx, e que se não estiver no formato esperado, aparece um texto de aviso. Se fosse um projeto longa vida, adicionaria autenticação na página incial, botões para editar e excluir posts agendados, e utilizaria styled components ou alguma outra lib CSS.

Mlabs

💻 Tecnologias

Instalação e uso

Clone do projeto

# Abra um terminal e copie este repositório com o comando
$ git clone https://github.com/arthurllopes/mlabs.git
# Entre na pasta do repositório clonado
$ cd mlabs

Iniciando o projeto

# Instale as dependências
npm install

# Na raiz do projeto crie uma copia do arquivo .env.local.example
# Altere o nome da copia para .env.local
# Preencha as variáveis ambiente de acordo com as instruções
$ cp .env.local.example .env.local

# Rode a aplicação
npm run dev

Considerações

Me considero júnior e me canditatei para nível júnior, acredito que realizei os requisitos do mesmo. Acho que consegueria atender os requisitos de pleno e Sênior neste desafio em especial. Pórem não tive muito tempo devido acontecimentos pessoais.

Autor

Feito por Arthur Lopes 👋🏽 Entre em contato!