{"id":17965983,"url":"https://github.com/rodrigofontesdev/investidor10-api","last_synced_at":"2026-04-13T17:34:00.425Z","repository":{"id":259485759,"uuid":"876946620","full_name":"rodrigofontesdev/investidor10-api","owner":"rodrigofontesdev","description":"Uma REST API para a aplicação de notícias criada para o teste técnico da Investidor10. Construída em Laravel.","archived":false,"fork":false,"pushed_at":"2024-10-26T15:50:45.000Z","size":94,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-03T20:33:29.782Z","etag":null,"topics":["api-rest","docker","laravel","php"],"latest_commit_sha":null,"homepage":"","language":"PHP","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}},"created_at":"2024-10-22T20:22:38.000Z","updated_at":"2024-10-26T15:50:48.000Z","dependencies_parsed_at":"2024-10-25T23:13:09.280Z","dependency_job_id":"e26d0eee-7617-4557-808e-523e3123329f","html_url":"https://github.com/rodrigofontesdev/investidor10-api","commit_stats":{"total_commits":14,"total_committers":1,"mean_commits":14.0,"dds":0.0,"last_synced_commit":"591382cfeb108d6f6134e8be2d07d958a1657d4d"},"previous_names":["rodrigofontesdev/investidor10-api"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/rodrigofontesdev/investidor10-api","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rodrigofontesdev%2Finvestidor10-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rodrigofontesdev%2Finvestidor10-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rodrigofontesdev%2Finvestidor10-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rodrigofontesdev%2Finvestidor10-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rodrigofontesdev","download_url":"https://codeload.github.com/rodrigofontesdev/investidor10-api/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rodrigofontesdev%2Finvestidor10-api/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31762612,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-13T15:25:13.801Z","status":"ssl_error","status_checked_at":"2026-04-13T15:25:09.162Z","response_time":93,"last_error":"SSL_read: 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":["api-rest","docker","laravel","php"],"created_at":"2024-10-29T13:06:23.892Z","updated_at":"2026-04-13T17:34:00.401Z","avatar_url":"https://github.com/rodrigofontesdev.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 10News\n\nUma API Rest da aplicação de notícias [10News](https://github.com/rodrigofontesdev/investidor10), o projeto foi elaborado como solução para o teste técnico da **Investidor10**.\n\nNeste repositório está localizado o back-end do projeto, como requisito do desafio foi utilizado o framework **Laravel**.\n\n## Pré-requisitos\n\n- Git\n- Docker\n\n## Como iniciar\n\nClone o repositório em um novo diretório:\n\n```sh\ngit clone git@github.com:rodrigofontesdev/investidor10-api.git\n```\n\nInicie o Docker container:\n\n```sh\ndocker compose up -d\n```\n\n```sh\ndocker container ls\n```\n\nAbra um terminal `shell` do serviço `php-fpm`:\n\n```sh\ndocker exec -it investidor10-api-php-fpm-1 sh\n```\n\n```sh\ncomposer install\n```\n\n_Nota: `investidor10-api` é o nome da pasta do projeto._\n\nCrie o arquivo `.env`:\n\n```sh\ncp .env.example .env\n```\n\nExecute as migrations do banco de dados:\n\n```sh\ntouch database/database.sqlite\n```\n\n```sh\nphp artisan migrate --seed\n```\n\nPara finalizar verifique se a aplicação subiu com sucesso, visite: [http://localhost/up](http://localhost/up).\n\n## Funcionalidades\n\n- [x] Retornar as notícias por categoria\n- [x] Retornar todas as notícias\n- [x] Retornar o contéudo da notícia\n- [x] Paginação de resultados\n- [x] Ordenação de resultados\n- [x] Versionamento da API\n\n## Testes\n\nPara executar os testes, digite o comando abaixo no terminal do serviço `php-fpm`:\n\n```sh\nphp artisan test\n```\n\n## Considerações\n\nPara construção da API Rest, segui uma arquitetura para versionamento da API, imaginando um cenário onde o projeto continuasse crescendo.\n\nOs endpoints foram desenvolvidos sob a metodologia TDD, essa abordagem permite a detecção precoce de bugs, a criação de código mais robusto e a manutenção da integridade da API mesmo diante de modificações.\n\nPensando no aperfeiçoamento do projeto, pode ser interessante integrar uma ferramenta de Logging e a criação de uma classe para ser responsável por criar novas instâncias de erros da API.\n\n## Construído com\n\n- Laravel 11.x\n- Docker\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-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frodrigofontesdev%2Finvestidor10-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frodrigofontesdev%2Finvestidor10-api/lists"}