Skip to content

Chrome extension: tombstone badge on GitHub repo pages #14

@dotsystemsdevs

Description

@dotsystemsdevs

What

A Manifest V3 Chrome extension that injects a small tombstone badge on GitHub repo pages. When a repo is dead (based on our API), the badge appears near the repo header and links to its full certificate on commitmentissues.dev.

Behaviour

  1. User visits any GitHub repo page (e.g. `github.com/atom/atom`)
  2. Extension calls `https://commitmentissues.dev/api/repo?url=https://github.com/atom/atom\`
  3. If `deathIndex >= 6`, inject a badge near the repo title:
    `🪦 Declared Dead — View Certificate →`
  4. Badge links to `https://commitmentissues.dev/?repo=atom/atom\`
  5. If API is unavailable or rate-limited → badge is silently skipped (no error state shown)

Technical notes

  • MV3 extension (not MV2)
  • Content script only, no background service worker needed for MVP
  • Badge should be injected once per page load, cleaned up on navigation (GitHub is a SPA)
  • Style the badge to feel native-ish to GitHub's UI — dark bg, small font, no jarring contrast
  • Use `AbortSignal.timeout(4000)` on the fetch so slow API doesn't block page render

File structure

```
extension/
├── manifest.json
├── content.js
└── icon.png ← reuse src/app/icon.png
```

Acceptance criteria

  • Badge appears on dead repos (deathIndex ≥ 6), not on active ones
  • No badge on non-repo GitHub pages (org pages, user profiles, etc.)
  • No duplicate badge on SPA navigation
  • API unavailable → graceful silence
  • Works in Chrome 114+ (MV3)
  • Load unpacked instructions in README updated

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requesthelp wantedExtra attention is needed

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions