Skip to content

Commit b772298

Browse files
fix: commit missing types and about page import
- types.ts: export UserRepoSummary (required by page.tsx and UserDashboard) - about/page.tsx: import from ./AboutContent (component was committed separately) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent 84af2cb commit b772298

2 files changed

Lines changed: 13 additions & 100 deletions

File tree

src/app/about/page.tsx

Lines changed: 2 additions & 100 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import type { Metadata } from 'next'
2-
import SubpageShell from '@/components/SubpageShell'
2+
import AboutContent from './AboutContent'
33

44
export const metadata: Metadata = {
55
title: 'About — Commitment Issues | How It Works',
@@ -12,104 +12,6 @@ export const metadata: Metadata = {
1212
},
1313
}
1414

15-
const UI = `var(--font-dm), -apple-system, sans-serif`
16-
17-
const SECTIONS = [
18-
{
19-
title: 'What is this?',
20-
body: "A parody tool for dead repos. Paste a GitHub URL and get an official-looking death certificate for your abandoned side project.",
21-
},
22-
{
23-
title: 'Is the data real?',
24-
body: "Yes. We use GitHub's public API (commits, stars, issues, archive status). Cause of death is generated from those signals.",
25-
},
26-
{
27-
title: 'Private repos?',
28-
body: "No. We don't break into houses. Public repos only.",
29-
},
30-
{
31-
title: 'What we collect',
32-
body: "No accounts and no signup. We process the GitHub URL you submit, store the latest public burials shown on the homepage (repo name, generated cause, score, timestamp), and collect anonymous usage metrics to understand feature usage.",
33-
},
34-
{
35-
title: 'Support the Undertaker ⚰️',
36-
body: "This site runs on a cheap server and a questionable amount of free time. If it made you laugh, a coffee keeps the lights on.",
37-
coffee: true,
38-
},
39-
{
40-
title: 'Contact',
41-
body: 'Questions, bugs, or legal threats:',
42-
email: 'dot.systems@proton.me',
43-
},
44-
{
45-
title: 'Terms',
46-
body: "A parody tool — certificates are not legally valid documents. Data is from GitHub's public API; causes of death are algorithmic. Personal use only. By using the service you acknowledge that we process submitted public repo URLs, publish recent public burials on the homepage, and collect anonymous aggregate analytics. We may update these at any time. Continued use = acceptance.",
47-
},
48-
]
49-
5015
export default function AboutPage() {
51-
return (
52-
<SubpageShell
53-
title="The Mortician"
54-
subtitle="Everything you need to know before the funeral."
55-
microcopy="Last updated March 2026"
56-
>
57-
<div className="about-cards" style={{ display: 'flex', flexDirection: 'column', gap: '10px' }}>
58-
{SECTIONS.map(({ title, body, email, coffee }) => (
59-
<div
60-
key={title}
61-
style={{
62-
padding: '20px 18px',
63-
border: '2px solid #1a1a1a',
64-
borderRadius: '0',
65-
background: '#EDE8E1',
66-
}}
67-
>
68-
<p style={{ fontFamily: UI, fontSize: 'clamp(16px, 4.2vw, 17px)', fontWeight: 700, color: '#160A06', margin: '0 0 10px 0' }}>
69-
{title}
70-
</p>
71-
<p style={{
72-
fontFamily: UI,
73-
fontSize: 'clamp(15px, 4vw, 16px)',
74-
color: '#555',
75-
lineHeight: 1.7,
76-
margin: 0,
77-
}}>
78-
{body}
79-
{email ? (
80-
<a href={`mailto:${email}`} className="subpage-inline-mail">{email}</a>
81-
) : null}
82-
</p>
83-
{coffee ? (
84-
<a
85-
className="coffee-btn-fixed"
86-
href="https://buymeacoffee.com/commitmentissues"
87-
target="_blank"
88-
rel="noopener noreferrer"
89-
style={{
90-
display: 'inline-flex',
91-
alignItems: 'center',
92-
justifyContent: 'center',
93-
marginTop: '12px',
94-
padding: '7px 12px',
95-
border: '1.5px solid #1a1a1a',
96-
background: '#f6f6f6',
97-
color: '#1a1a1a',
98-
textDecoration: 'none',
99-
fontFamily: `var(--font-dm), -apple-system, sans-serif`,
100-
fontSize: '12px',
101-
fontWeight: 600,
102-
letterSpacing: '0.01em',
103-
whiteSpace: 'nowrap',
104-
}}
105-
>
106-
☕ Don&apos;t let us die too
107-
</a>
108-
) : null}
109-
</div>
110-
))}
111-
</div>
112-
113-
</SubpageShell>
114-
)
16+
return <AboutContent />
11517
}

src/lib/types.ts

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,17 @@ export interface ApiErrorResponse {
3535

3636
export type ApiResponse = DeathCertificate | ApiErrorResponse
3737

38+
export interface UserRepoSummary {
39+
fullName: string
40+
pushedAt: string | null
41+
isArchived: boolean
42+
language: string | null
43+
daysSinceLastPush: number | null
44+
isDead: boolean
45+
isStruggling: boolean
46+
cause: string
47+
}
48+
3849
export interface LeaderboardEntry {
3950
fullName: string
4051
cause: string

0 commit comments

Comments
 (0)