{"id":15115542,"url":"https://github.com/jmpinney/compost","last_synced_at":"2025-09-27T21:30:41.486Z","repository":{"id":250228358,"uuid":"833855085","full_name":"jmpinney/compost","owner":"jmpinney","description":"a firefox extension for checking link rot","archived":false,"fork":false,"pushed_at":"2024-07-26T20:28:43.000Z","size":59,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-09-27T01:49:16.926Z","etag":null,"topics":["extensions","firefox","linkrot"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jmpinney.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-07-25T22:47:04.000Z","updated_at":"2024-07-27T20:55:48.000Z","dependencies_parsed_at":"2024-07-26T01:28:27.602Z","dependency_job_id":"0dcc4e3d-3052-444a-bf76-b0c8a56926b4","html_url":"https://github.com/jmpinney/compost","commit_stats":null,"previous_names":["jmpinney/compost"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jmpinney%2Fcompost","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jmpinney%2Fcompost/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jmpinney%2Fcompost/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jmpinney%2Fcompost/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jmpinney","download_url":"https://codeload.github.com/jmpinney/compost/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":234460506,"owners_count":18836837,"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":["extensions","firefox","linkrot"],"created_at":"2024-09-26T01:43:54.412Z","updated_at":"2025-09-27T21:30:41.217Z","avatar_url":"https://github.com/jmpinney.png","language":"JavaScript","funding_links":[],"categories":["JavaScript"],"sub_categories":[],"readme":"# compost\n a firefox extension for checking link rot\n\n![compost](https://github.com/user-attachments/assets/e332c11c-af37-4e94-abaa-d812b0a26d5c)\n\n\n # What does it do?\nI'm sick of clicking links and hitting 404 pages, home page redirects or sites that just don't exist anymore. Link rot sucks, and i want a way to know if a link is broken before I click it. This extension counts the number of links present on a webpage and checks each link to see if it returns an HTML status code error. If it does, it counts it as a broken link and displays it as broken.\n\nLink rot will become more and more pervasive as time goes on. [Pew Research](https://www.pewresearch.org/data-labs/2024/05/17/when-online-content-disappears/) says that 38% of webpages available in 2013 are no longer accesible in 2024. That sucks! \n\n# Steps to load the extension:\n1. Download folder\n2. Load the Extension: Go to about:debugging in Firefox, click \"This Firefox\" or \"This Nightly\", then \"Load Temporary Add-on\", and select the manifest.json file from the extensions directory.\n3. To detect broken links, click the extension on the toolbar. \n\n# Issues\nThis has some rough edges and a couple issues I'm working through:\n- Extremely slow on sites with more than a few hundred links\n- Doesn't persist list of broken links when popup is closed and reopened\n- Ugly UI is ugly\n- Doesn't run automatically\n- Need to figure out CORS... i'm a system engineer, not a web developer, so this is a new concept to me\n\nMicrosoft redirects all their links... go figure. Will have to figure out how to detect that while still detecting homepage redirects for missing pages. \n- ![image](https://github.com/user-attachments/assets/1676ed04-319f-48bc-bfaf-b467526f46e2)\n\nAll these links are actually broken...home page redirect or 404 page. Working as expected.\n- \u003cimg width=\"1465\" alt=\"image\" src=\"https://github.com/user-attachments/assets/8ac6a83c-0555-4256-a7a9-e8bd307a0a63\"\u003e\n\n# Planned Features\n- When a site is broken, add toggle to report the status code instead of just \"broken\"\n- Better UI and accessibility features\n- Upload to firefox extensions store\n- Automatically run on page load instead of manually initiating the scan\n\n# Features planned if i turn my life around and stop procrastinating \n- Highlighting broken links on the webpage\n- Some kind of link rot reporting mechanism/database\n- Automatically fetch archive.org versions and substitute broken links\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjmpinney%2Fcompost","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjmpinney%2Fcompost","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjmpinney%2Fcompost/lists"}