You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix: FAQ undefined CSS var + em-dash sweep in user-facing copy
Two cleanup passes from the full-page audit:
1. faq/page.tsx referenced var(--ink-fade), which isn't defined in
the design tokens — text fell back to default color. Switched to
var(--c-muted) which is the intended muted-text token.
2. Removed em dashes (—) from all user-facing strings: meta titles,
meta descriptions, OG/Twitter cards, and visible body text on
layout / pricing / about / faq / legal. Replaced with colons,
commas, parens, or middle-dot separators as fit each context.
Em dashes leak into browser tabs and search snippets, and they
read as AI-generated tells. JSX comments left untouched.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: src/app/about/AboutContent.tsx
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -11,7 +11,7 @@ const SECTIONS = [
11
11
{
12
12
id: 'method-of-examination',
13
13
heading: 'Method of Examination',
14
-
body: "We query the GitHub public API — commit history, star count, open issues, archive status — and run a severity assessment. The cause of death is algorithmic, not editorial. The results are accurate. The framing is not.",
14
+
body: "We query the GitHub public API for commit history, star count, open issues, and archive status, then run a severity assessment. The cause of death is algorithmic, not editorial. The results are accurate. The framing is not.",
Copy file name to clipboardExpand all lines: src/app/about/page.tsx
+2-2Lines changed: 2 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -2,11 +2,11 @@ import type { Metadata } from 'next'
2
2
importAboutContentfrom'./AboutContent'
3
3
4
4
exportconstmetadata: Metadata={
5
-
title: 'About — Commitment Issues | How It Works',
5
+
title: 'About · Commitment Issues · How It Works',
6
6
description: 'How Commitment Issues works: we analyze your GitHub repo\'s commit history, activity decay, and open issues to assign a cause of death and generate a printable death certificate.',
title: 'About — Commitment Issues | How It Works',
9
+
title: 'About · Commitment Issues · How It Works',
10
10
description: 'How Commitment Issues works: we analyze your GitHub repo\'s commit history, activity decay, and open issues to assign a cause of death and generate a printable death certificate.',
Copy file name to clipboardExpand all lines: src/app/faq/page.tsx
+7-7Lines changed: 7 additions & 7 deletions
Original file line number
Diff line number
Diff line change
@@ -2,11 +2,11 @@ import type { Metadata } from 'next'
2
2
importLinkfrom'next/link'
3
3
4
4
exportconstmetadata: Metadata={
5
-
title: 'FAQ — Commitment Issues',
5
+
title: 'FAQ · Commitment Issues',
6
6
description: 'Frequently asked questions about Commitment Issues, the death certificate generator for abandoned GitHub repositories. Free, no sign-up.',
a: 'Yes — Commitment Issues has a Famous Casualties section listing well-known abandoned open-source projects. You can also paste any GitHub username to see that user\'s personal graveyard of unfinished projects.',
35
+
a: 'Yes. Commitment Issues has a Famous Casualties section listing well-known abandoned open-source projects. You can also paste any GitHub username to see that user\'s personal graveyard of unfinished projects.',
36
36
},
37
37
{
38
38
q: 'How do I detect dependency rot in my project?',
39
39
a: 'Commitment Issues focuses on individual repo abandonment, not full dependency trees. Pair it with tools like npm audit or Snyk for tree-level rot, and use Commitment Issues to verify whether the maintainers behind specific dependencies are still active.',
40
40
},
41
41
{
42
42
q: 'Is Commitment Issues free?',
43
-
a: 'Yes — completely free. No ads, no in-app purchases, no sign-up, no account required. Works in any browser. The Chrome extension is also free.',
43
+
a: 'Yes, completely free. No ads, no in-app purchases, no sign-up, no account required. Works in any browser. The Chrome extension is also free.',
q: 'How does Commitment Issues compare to GitHub\'s built-in tools?',
59
-
a: 'GitHub shows raw activity data but does not synthesize abandonment. Commitment Issues takes those signals and renders an opinionated verdict — alive, life support, or deceased — with a comedic but accurate certificate.',
59
+
a: 'GitHub shows raw activity data but does not synthesize abandonment. Commitment Issues takes those signals and renders an opinionated verdict (alive, life support, or deceased) with a comedic but accurate certificate.',
60
60
},
61
61
{
62
62
q: 'Who made Commitment Issues?',
@@ -87,11 +87,11 @@ export default function FAQPage() {
87
87
<mainclassName="page-shell-main">
88
88
<FAQJsonLd/>
89
89
<divclassName="page-shell-inner">
90
-
<Linkhref="/"style={{display: 'inline-block',marginBottom: 24,color: 'var(--ink-fade)',fontSize: 14,textDecoration: 'none'}}>← Back to Commitment Issues</Link>
90
+
<Linkhref="/"style={{display: 'inline-block',marginBottom: 24,color: 'var(--c-muted)',fontSize: 14,textDecoration: 'none'}}>← Back to Commitment Issues</Link>
title: 'Commitment Issues — Death Certificates for Dead GitHub Repos',
41
-
description: 'Paste any public GitHub repo and get an official death certificate — cause of death, last commit as last words, and repo stats. Free for developers.',
40
+
title: 'Commitment Issues: Death Certificates for Dead GitHub Repos',
41
+
description: 'Paste any public GitHub repo and get an official death certificate: cause of death, last commit as last words, and repo stats. Free for developers.',
42
42
keywords: [
43
43
'abandoned github repo','dead github project','github repo death certificate',
44
44
'unmaintained open source','stale repository checker','github graveyard',
Copy file name to clipboardExpand all lines: src/app/legal/legalContent.tsx
+2-2Lines changed: 2 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -20,7 +20,7 @@ const SECTIONS: Section[] = [
20
20
{
21
21
id: 'data-sources',
22
22
heading: 'Data Sources',
23
-
body: "The tool analyzes public data from GitHub's public API — repository metadata, commit activity, archive status, open issues. We do not access private code, credentials, or anything not already publicly available on GitHub.",
23
+
body: "The tool analyzes public data from GitHub's public API: repository metadata, commit activity, archive status, open issues. We do not access private code, credentials, or anything not already publicly available on GitHub.",
24
24
},
25
25
{
26
26
id: 'privacy',
@@ -30,7 +30,7 @@ const SECTIONS: Section[] = [
30
30
{
31
31
id: 'analytics',
32
32
heading: 'Analytics',
33
-
body: 'Privacy-friendly analytics only — aggregate counts, not personal profiles. You can avoid submitting private or sensitive URLs; this tool is intended for public GitHub data only.',
33
+
body: 'Privacy-friendly analytics only: aggregate counts, not personal profiles. You can avoid submitting private or sensitive URLs; this tool is intended for public GitHub data only.',
Copy file name to clipboardExpand all lines: src/app/pricing/PricingContent.tsx
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -68,7 +68,7 @@ const SECTIONS = [
68
68
{
69
69
id: 'how-we-survive',
70
70
heading: 'How We Stay Alive',
71
-
body: 'Commitment Issues is built and maintained by Dot Systems — an indie studio that funds this work from other projects. Fork it, share it, or open a pull request with new famous casualties. If you really want to chip in:',
71
+
body: 'Commitment Issues is built and maintained by Dot Systems, an indie studio that funds this work from other projects. Fork it, share it, or open a pull request with new famous casualties. If you really want to chip in:',
0 commit comments