{"id":15755989,"url":"https://github.com/inwerpsel/permalinkify","last_synced_at":"2025-03-31T08:19:24.800Z","repository":{"id":209338258,"uuid":"723780981","full_name":"Inwerpsel/permalinkify","owner":"Inwerpsel","description":"Turn old GitHub main branch links into a permalink pointing to the right commit sha","archived":false,"fork":false,"pushed_at":"2023-12-06T17:28:55.000Z","size":15,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-06T12:47:50.825Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Inwerpsel.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2023-11-26T18:35:15.000Z","updated_at":"2023-12-05T21:07:05.000Z","dependencies_parsed_at":"2024-10-31T00:35:26.787Z","dependency_job_id":null,"html_url":"https://github.com/Inwerpsel/permalinkify","commit_stats":null,"previous_names":["inwerpsel/permalinkify"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Inwerpsel%2Fpermalinkify","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Inwerpsel%2Fpermalinkify/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Inwerpsel%2Fpermalinkify/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Inwerpsel%2Fpermalinkify/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Inwerpsel","download_url":"https://codeload.github.com/Inwerpsel/permalinkify/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246436339,"owners_count":20776995,"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-10-04T08:41:26.488Z","updated_at":"2025-03-31T08:19:24.781Z","avatar_url":"https://github.com/Inwerpsel.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# permalinkify\n\nIt happens to all of us. We (or somebody else) copy a link from GitHub, but forget to use a permalink.\nAn arbitrary amount of commits later, we stumble on this link, and scramble to find the lines being linked.\nEspecially annoying if the file was removed.\n\nUse this to locate the last commit on the main branch before the date of the message you found the link in.\n\n## [inwerpsel.github.io/permalinkify](https://inwerpsel.github.io/permalinkify)\n\n## Bookmarklet\nCreate a new bookmark with any name (e.g. \"⛓permalinkify\" or just \"⛓\" for maximal compactness),\nand the entire contents of [bookmarklet.js](https://github.com/Inwerpsel/permalinkify/blob/main/bookmarklet.js) as the URL (needs the `javascript:` at the start to work as bookmarklet).\n\nIf you find a branch link on GitHub issues, put the cursor selection over it so that it starts inside the link.\nThen press the bookmark.\n\nThis should locate the timestamp of the message on GitHub, and has fallbacks that can make it work in other locations\nwhere it can find a timestamp inside of the text content or one of the attribute for the link node or any of its parents.\n\n## Limitations\n* Only works on main branch (might work to some extent on other branches)\n* If there are frequent commits around the date, it might pick one that is too early or too late.\nYou can try changing the date value but it's still tricky.\nWill be resolved by showing a list of commits.\n\n## Examples\n[July 2018 issue comment on the React repo](https://github.com/facebook/react/issues/13206#issuecomment-404950040)\n\n\n## Todo\n* Show multiple with dates\n* Use date picker (perhaps with datalist of commit info)\n* Support other branches (probably hard because the commit endpoint that is used only works on the main branch)\n* If lines changed, figure out where they are in the latest version. If the corresponding text object never changed,\nit should be possible to get this from the repository, but probably not with the GitHub API.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finwerpsel%2Fpermalinkify","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Finwerpsel%2Fpermalinkify","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finwerpsel%2Fpermalinkify/lists"}