{"id":17853975,"url":"https://github.com/rodrigofontesdev/investidor10","last_synced_at":"2026-04-13T13:31:51.094Z","repository":{"id":259234664,"uuid":"876932042","full_name":"rodrigofontesdev/investidor10","owner":"rodrigofontesdev","description":"Uma aplicação de notícias desenvolvida para o teste técnico da Investidor10. Construída em Next.js.","archived":false,"fork":false,"pushed_at":"2026-01-28T00:37:12.000Z","size":587,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-28T15:36:29.792Z","etag":null,"topics":["nextjs","react-query","tailwindcss"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rodrigofontesdev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-10-22T19:45:23.000Z","updated_at":"2026-01-28T00:37:09.000Z","dependencies_parsed_at":"2025-02-08T07:25:10.703Z","dependency_job_id":"93ca44ff-b966-4fb1-a398-8fd9cd1146e2","html_url":"https://github.com/rodrigofontesdev/investidor10","commit_stats":null,"previous_names":["rodrigofontesdev/investidor10"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/rodrigofontesdev/investidor10","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rodrigofontesdev%2Finvestidor10","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rodrigofontesdev%2Finvestidor10/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rodrigofontesdev%2Finvestidor10/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rodrigofontesdev%2Finvestidor10/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rodrigofontesdev","download_url":"https://codeload.github.com/rodrigofontesdev/investidor10/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rodrigofontesdev%2Finvestidor10/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31754827,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-13T13:27:56.013Z","status":"ssl_error","status_checked_at":"2026-04-13T13:21:23.512Z","response_time":93,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["nextjs","react-query","tailwindcss"],"created_at":"2024-10-28T00:06:03.247Z","updated_at":"2026-04-13T13:31:51.059Z","avatar_url":"https://github.com/rodrigofontesdev.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 10News\n\nUma aplicação de notícias construída em **Next.js**, o projeto foi elaborado como solução para o teste técnico da **Investidor10**.\n\nNeste repositório está localizado o front-end do projeto, como requisitos do desafio foram utilizados **Next.js** e **Tailwind CSS**.\n\n## Pré-requisitos\n\n- Git\n- Node 20+\n\n## Como iniciar\n\nAntes de começar, siga o tutorial de instalação do back-end [10News API](https://github.com/rodrigofontesdev/investidor10-api).\n\nClone o repositório em um novo diretório:\n\n```sh\ngit clone git@github.com:rodrigofontesdev/investidor10.git\n```\n\n```sh\ncd investidor10\n```\n\nInstale as dependências do projeto:\n\n```sh\nnpm install\n```\n\nInicie o Next.js:\n\n```sh\nnpm run dev\n```\n\n## Funcionalidades\n\n- [x] Visualizar todas as notícias na página inicial\n- [x] Fazer a paginação de resultados\n- [x] Exibir as notícias por categoria\n- [x] Acessar o conteúdo da notícia\n- [x] Utilizar a aplicação em qualquer tamanho de dispositivo\n\n## Considerações\n\nPara construção de alguns componentes utilizei o padrão **Compound Component Pattern**, ideal para componentes que são dependentes de outros e muitas das vezes compartilhan informações entre si.\n\nNa paginação procurei atuar com o conceito de \"infinite scroll\", o hook `useInfiniteQuery()` do React Query permite manipular os dados e parâmetros da paginação de maneira simples.\n\nCriação de custom hooks para separar a camada lógica do JSX, além de contar com o benefício de reaproveitamento do código das chamadas HTTP.\n\nA escolha do React Query para trabalhar com comunicação assincrona se deve aos benefícios que ele oferece, como gerenciamento de dados simplificado, cache das requisições e poder atuar com interface otimista.\n\nPor fim, atuei com o padrão `app router` para construção de rotas dinâmicas. Pensando no aperfeiçoamento do projeto, pode ser interessante aplicar testes end-to-end com ferramentas como Playwright ou Cypress para garantir a consistência das telas e poder realizar testes de acessibilidade. Além, melhorar o SEO das páginas.\n\n## Construído com\n\n- Next.js\n- Tailwind CSS\n- TanStack Query (React Query)\n\n## Licença\n\nEste projeto está licenciado sob a licença MIT - consulte o arquivo [LICENSE.md](LICENSE) para obter detalhes.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frodrigofontesdev%2Finvestidor10","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frodrigofontesdev%2Finvestidor10","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frodrigofontesdev%2Finvestidor10/lists"}