{"id":20714720,"url":"https://github.com/justingosses/repo_link_extractor","last_synced_at":"2026-04-28T03:05:24.324Z","repository":{"id":46095628,"uuid":"428065094","full_name":"JustinGOSSES/repo_link_extractor","owner":"JustinGOSSES","description":"A github actions + python code to extract URLs to code repositories to put into standard form, starting with github","archived":false,"fork":false,"pushed_at":"2021-11-15T21:00:33.000Z","size":93,"stargazers_count":3,"open_issues_count":1,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-01-17T21:43:37.603Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","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/JustinGOSSES.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}},"created_at":"2021-11-14T23:23:41.000Z","updated_at":"2024-03-09T18:33:23.000Z","dependencies_parsed_at":"2022-08-27T03:23:39.206Z","dependency_job_id":null,"html_url":"https://github.com/JustinGOSSES/repo_link_extractor","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JustinGOSSES%2Frepo_link_extractor","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JustinGOSSES%2Frepo_link_extractor/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JustinGOSSES%2Frepo_link_extractor/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JustinGOSSES%2Frepo_link_extractor/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/JustinGOSSES","download_url":"https://codeload.github.com/JustinGOSSES/repo_link_extractor/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242988242,"owners_count":20217537,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":[],"created_at":"2024-11-17T02:33:46.938Z","updated_at":"2025-12-26T03:16:26.621Z","avatar_url":"https://github.com/JustinGOSSES.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# repo_link_extractor\nA github actions + python code to extract URLs to code repositories to put into standard form, starting with github\n\n## ---- NOTE: JUST STARTED ONLY AN IDEA TO COME BACK TO ----\n\n## Summary\n\n#### first minimum viable product goal\nThe first minimum viable product goal will be to harvest from https://github.com/softwareunderground/awesome-open-geoscience/blob/main/README.md all the github repositories URLs such that the form returned is https://github.com/ + \"username\" + \"repository name\" and then add them to the \"repos\" key in an existing JSON in a form like this: https://github.com/softwareunderground/open_geosciene_code_projects_viz/blob/main/_explore/input_lists.json , which is summarized below:\n```\n{\n    \"memberOrgs\": [\n        \"softwareunderground\"\n    ],\n    \"orgs\": [\n        \"agile-geoscience\",\n        \"softwareunderground\"\n    ],\n    \"repos\": [\n        \"ahotovec/redpy\",\n        \"whamlyn/auralib\"\n    ]\n}\n```\n\n#### 2nd intermediate product goal\n- Fires from a GitHubAction\n\n\n#### 3rd intermediate product goal\n- Integrated into https://github.com/softwareunderground/open_geosciene_code_projects_viz in terms of either internal code or dependency\n\n\n#### Eventual product goal\n- works for public, internal, and private GitHub URLs\n- Works for GitHub, GitLab, BitBucket, and other code repository URLS \u0026 APIs\n- Keeps track of harvest date, source file name, source file URL \u0026 code platform \u0026 domain in an intermediate file.\n\n## Related Projects\nThis is referenced on an issue here: https://github.com/softwareunderground/open_geosciene_code_projects_viz/issues/23\n\n## Potential Useful Bits\nregular expression `(https:\\/\\/github.com\\/)\\w+(\\/)\\w+ ` seems like a good starting point for the extraction of Github URLs.\n\n\n## GitHub Actions Structure Tentative:\n- download README file\n- replace old README file with new\n- extract all links matching a regular expression\n- sort \u0026 take out duplicates\n- make into JSON with domain, URL, org or username, repository name, source file name, source file link, and date of harvests\n- pull out org or username \u0026 repository name from above and put into appropriate key of the file JSON if not already there in either org or repo keys.\n\n## How to Integrate into https://github.com/softwareunderground/open_geosciene_code_projects_viz ??????\n\n#### Options:\n1. Put all of the code here into the repository: https://github.com/softwareunderground/open_geosciene_code_projects_viz \n2. Call the code here from https://github.com/softwareunderground/open_geosciene_code_projects_viz\n\n\n##### If calling the code....\n- (1) add the script to read the README to MASTER.sh as the first step\n- (2) set master.sh to be callled by GitHub actions\n- (3) when triggered the github actions does the entirity of the github actions in this repo, including calling the python scripts as its first step. \n- (4) latter steps include setting up the environnment and calling all the python scripts that the master.sh bash script calls.\nThe code would need to be called by either a GitHub Action on (pull request, push, manual, or cron job) or by trigger after the call to refresh the ","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjustingosses%2Frepo_link_extractor","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjustingosses%2Frepo_link_extractor","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjustingosses%2Frepo_link_extractor/lists"}