{"id":20154690,"url":"https://github.com/sebastianbrzustowicz/github-data","last_synced_at":"2026-05-01T22:35:28.639Z","repository":{"id":221793479,"uuid":"755305434","full_name":"sebastianbrzustowicz/GitHub-data","owner":"sebastianbrzustowicz","description":"Java + Spring Boot. Application for sending requests to GitHub API and collecting received data.","archived":false,"fork":false,"pushed_at":"2024-02-14T16:28:48.000Z","size":93,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-03T01:31:59.969Z","etag":null,"topics":["api","ci","data","github","json","junit","mapping","parallel","repository","rest-api","stream"],"latest_commit_sha":null,"homepage":"","language":"Java","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/sebastianbrzustowicz.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-02-09T21:12:12.000Z","updated_at":"2024-02-14T15:46:47.000Z","dependencies_parsed_at":"2024-11-13T23:39:55.239Z","dependency_job_id":null,"html_url":"https://github.com/sebastianbrzustowicz/GitHub-data","commit_stats":null,"previous_names":["sebastianbrzustowicz/github-data"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/sebastianbrzustowicz/GitHub-data","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sebastianbrzustowicz%2FGitHub-data","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sebastianbrzustowicz%2FGitHub-data/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sebastianbrzustowicz%2FGitHub-data/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sebastianbrzustowicz%2FGitHub-data/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sebastianbrzustowicz","download_url":"https://codeload.github.com/sebastianbrzustowicz/GitHub-data/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sebastianbrzustowicz%2FGitHub-data/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32515838,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-30T13:12:12.517Z","status":"online","status_checked_at":"2026-05-01T02:00:05.856Z","response_time":64,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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","ci","data","github","json","junit","mapping","parallel","repository","rest-api","stream"],"created_at":"2024-11-13T23:28:05.924Z","updated_at":"2026-05-01T22:35:28.622Z","avatar_url":"https://github.com/sebastianbrzustowicz.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# GitHub-data\nJava + Spring Boot. Application for retrieving repository specific information from GitHub API and processing received data.    \nAll repositories that are fork type are filtered.      \nThe GitHub API has a limited number of requests from the same IP address.      \nThere is some error handling in this situation and when the user is not found.    \n\nThe data collected from the GitHub API through various queries is as follows:     \n\n```json\n[\n{\n        \"repositoryName\": \"repository name\",\n        \"ownerLogin\": \"repository owner login\",\n        \"size\": \"size of repo in KB\",\n        \"branchData\": {\n            \"main\": \"last commit sha on this branch\",\n            \"secondBranch\": \"last commit sha on this branch\"\n        }\n        \"language\": \"major programming language\"\n}\n]\n```\n\n# Launching application\nWhen errors occur, take into account that the application was created with:         \n- Java 21.0.1        \n- Apache Maven 3.9.5        \n- Spring Boot 3.2.2\n  \nPaste this code into console to run GitHub-data app:         \n```console\ngit clone https://github.com/sebastianbrzustowicz/GitHub-data\ncd ./GitHub-data/GHData\nmvn clean install\nmvn spring-boot:run\n\n```\n\n# Endpoint\nThe `Content-Type` header in the endpoint request must be `application/json`:\n| HTTP method | endpoint | description | request type | response type |\n| -------------- | -------------- | -------------- | -------------- | -------------- |\n| :green_circle: GET | /GitHub/getData/{username} | get repositories data | - | JSON data |\n\n# Example\nInput in bash console:\n```console\ncurl -X GET -H \"Content-Type: application/json\" http://localhost:8080/GitHub/getData/sebastianbrzustowicz\n```\nPart of the result:\n```json\n[\n    {\n        \"repositoryName\": \"CLI-users-management\",\n        \"ownerLogin\": \"sebastianbrzustowicz\",\n        \"size\": 124,\n        \"branches\": {\n            \"main\": \"0b025cbda0e64803e1e81f336b469111a5ff9d26\"\n        },\n        \"language\": \"Python\"\n    },\n    {\n        \"repositoryName\": \"Data-scraping-webapp\",\n        \"ownerLogin\": \"sebastianbrzustowicz\",\n        \"size\": 25,\n        \"branches\": {\n            \"main\": \"48211a610cdd1cb7865694044f40f0f75a2aa076\"\n        },\n        \"language\": \"Python\"\n    },\n    {\n        \"repositoryName\": \"E-commerce-API-with-AI-assistant\",\n        \"ownerLogin\": \"sebastianbrzustowicz\",\n        \"size\": 151,\n        \"branches\": {\n            \"main\": \"8a5773e673e20c98c7a2cc53eea0374b301c96e0\"\n        },\n        \"language\": \"Java\"\n    }\n]\n```\nIf user is not found:    \n```json\n{\n    \"status\": 404,\n    \"message\": \"User not found\"\n}\n```\nIf the requests limit is reached:    \n```json\n{\n    \"status\": 403,\n    \"message\": \"The limit of requests for the GitHub API from this IP address has been reached\"\n}\n```\n\n## License\n\nGitHub-data is released under the MIT license.\n\n## Author\n\nSebastian Brzustowicz \u0026lt;Se.Brzustowicz@gmail.com\u0026gt;\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsebastianbrzustowicz%2Fgithub-data","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsebastianbrzustowicz%2Fgithub-data","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsebastianbrzustowicz%2Fgithub-data/lists"}