└── README.md /README.md: -------------------------------------------------------------------------------- 1 | ### FCamara 🚀 2 | *"Queremos ser como uma árvore, 3 | crescer um pouco todos os dias e tentar tocar o céu, 4 | sem perder a solidez de nossas raízes."* 5 | Conheça: www.fcamara.com.br 6 | 7 | ## Teste para vaga de Desenvolvedor Front-end 8 | Desenvolver páginas seguindo um modelo de design e obter dados a partir de uma API. 9 | 10 | ## Tarefas 11 | 12 | ### 1. Desenvolva o esqueleto da aplicação 13 | 14 | - Desenvolva o cabeçalho, sidebar e área de conteúdo. 15 | - Crie a estrutura de abas e faça a navegação entre elas. 16 | 17 | ### 2. Implementando pesquisa 18 | 19 | - Implemente o campo de pesquisa para que o usuário busque por um repositório. O dashboard funcionará a partir do repositório pesquisado. Repositórios sugeridos: react, vue. 20 | 21 | ### 3. Conectar à API do Github 22 | 23 | - Conecte à API do Github e liste os commits do repositório pesquisado. 24 | - Listar os commits em uma tabela, dispondo as informações de acordo com o documento. 25 | 26 | ### 4. Implementando gráficos na aba Commits 27 | 28 | - Implemente um gráfico de linha que liste a quantidade de commits do repositório ao longo do tempo. Utilize o gráfico Commits Over Time como exemplo. 29 | - Implemente um gráfico de barra que liste o top 10 de usuários que mais fizeram commits ao longo do tempo. Utilize o gráfico Top 10 Users by Commit como exemplo. 30 | 31 | ### 5. Implementando gráficos na aba Pull Requests 32 | 33 | - Desenvolva o gráfico de barras que liste os pull requests e agrupe-os por status (opened, closed e merged). 34 | - Crie uma tabela que liste todos os pull requests do repositório. 35 | 36 | ### 6. Implementando gráficos na aba Issues 37 | 38 | - Desenvolva um gráfico de pizza para listar a porcentagem de issues abertas, fechadas e reabertas. 39 | - Desenvolva uma tabela para listar todas as issues do repositório. 40 | 41 | ### 7. Implementando paginação 42 | 43 | - Implemente a paginação em todos os gráficos desenvolvidos. 44 | - Implemente a paginação e ordenação em todas as tabelas criadas. 45 | 46 | ## Requisitos 47 | 48 | - Utilizar uma das seguintes bibliotecas CSS: Bulma, Bootstrap ou Materialize. 49 | - Seguir as definições de design listadas no documento. 50 | - Utilizar um dos seguintes frameworks de desenvolvimento web: Angular, React ou Vue.js. 51 | - Utilizar ao menos 3 features do ES6+ e escrever no README o porquê você as utilizou. 52 | - Utilizar D3.js para o desenvolvimento dos gráficos. 53 | 54 | ## Tarefas bônus 55 | - Utilizar um pré-compilador CSS (SASS, LESS). 56 | - Implementar testes unitários. 57 | - Utilizar uma ferramenta para fazer showcase de componentes isolados (Storybook.js, Styleguidist). 58 | - Realizar o deploy da sua solução no Heroku ou alguma outra plataforma de hosting. 59 | 60 | ## Submissão 61 | - Crie um fork do teste para acompanharmos o seu desenvolvimento através dos seus commits. 62 | - Recomendamos a criação de pull request para cada tarefa, mantendo a master apenas com versões estáveis. 63 | 64 | ## Obrigado! 65 | Agradecemos sua participação no teste. Boa sorte! 😄 66 | --------------------------------------------------------------------------------