Skip to content

Commit b16b6c8

Browse files
committed
feat(cripto): lime accent for SkateHive, red for BuilderDAO, bright-accent contrast
SkateHive goes lime to match its black/neon-green brand (and the matrix rain already in its header); BuilderDAO takes the red. Bright accents (lime/gold) wash out as small text on paper, so PR badges render filled with dark text and small marks fall back to ink — same rule the builds list already applies to hover text.
1 parent 112bed9 commit b16b6c8

2 files changed

Lines changed: 22 additions & 9 deletions

File tree

app/cripto/_data.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ export const contributions: Contribution[] = [
8080
meta: "OPEN SOURCE · WEB3",
8181
role: "contributor",
8282
href: "https://skatehive.app/",
83-
accent: "--c-red",
83+
accent: "--c-lime",
8484
font: "serif",
8585
stack: ["React", "TypeScript", "Next.js", "wagmi", "viem", "Hive", "Keychain"],
8686
flavor: {
@@ -244,7 +244,7 @@ export const contributions: Contribution[] = [
244244
meta: "NOUNS BUILDER · DAO",
245245
role: "contributor",
246246
href: "https://nouns.build",
247-
accent: "--c-lime",
247+
accent: "--c-red",
248248
font: "mono",
249249
stack: ["Next.js", "TypeScript", "Solidity"],
250250
},

app/cripto/builds/[slug]/BuildDetail.tsx

Lines changed: 20 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,21 @@ export default function BuildDetail({ slug }: { slug: BuildSlug }) {
3636
const build = contributions.find((c) => c.slug === slug)!;
3737
const detail = b.details[slug] as DetailCopy;
3838
const flavor = build.flavor;
39+
// bright accents (lime/gold) wash out as small text on paper — render small
40+
// marks in ink and fill the PR badge instead (mirrors Contributions' fg rule)
41+
const bright = build.accent === "--c-lime" || build.accent === "--c-gold";
3942
const accent = { color: `var(${build.accent})` } as CSSProperties;
43+
const markStyle = bright ? undefined : accent;
44+
const badgeStyle = bright
45+
? ({
46+
background: `var(${build.accent})`,
47+
borderColor: "var(--c-ink)",
48+
color: "var(--c-on-bright)",
49+
} as CSSProperties)
50+
: ({
51+
borderColor: `var(${build.accent})`,
52+
color: `var(${build.accent})`,
53+
} as CSSProperties);
4054

4155
const metaLine = `${build.meta} · ${b.roles[build.role]}`;
4256

@@ -210,7 +224,7 @@ export default function BuildDetail({ slug }: { slug: BuildSlug }) {
210224
key={p}
211225
className="c-mono text-[13px] flex items-start gap-3 border-b border-[var(--c-ink)]/15 pb-3 last:border-0"
212226
>
213-
<span className="mt-[2px]" style={accent}>
227+
<span className="mt-[2px]" style={markStyle}>
214228
215229
</span>
216230
{p}
@@ -226,7 +240,9 @@ export default function BuildDetail({ slug }: { slug: BuildSlug }) {
226240
{flavor.prStats && (
227241
<span className="c-mono text-[11px] text-[var(--c-ink-soft)] whitespace-nowrap">
228242
{flavor.prStats.total} PRs ·{" "}
229-
<span style={accent}>{flavor.prStats.merged} merged</span>
243+
<span className="font-semibold" style={markStyle}>
244+
{flavor.prStats.merged} merged
245+
</span>
230246
</span>
231247
)}
232248
</div>
@@ -241,10 +257,7 @@ export default function BuildDetail({ slug }: { slug: BuildSlug }) {
241257
>
242258
<span
243259
className="c-mono text-[8px] tracking-[0.12em] uppercase px-1.5 py-1 border-2 whitespace-nowrap"
244-
style={{
245-
borderColor: `var(${build.accent})`,
246-
color: `var(${build.accent})`,
247-
}}
260+
style={badgeStyle}
248261
>
249262
{pr.merged ? "merged" : "pr"}
250263
</span>
@@ -271,7 +284,7 @@ export default function BuildDetail({ slug }: { slug: BuildSlug }) {
271284
key={l}
272285
className="c-mono text-[13px] leading-[1.6] flex items-start gap-3"
273286
>
274-
<span className="mt-[2px] font-semibold" style={accent}>
287+
<span className="mt-[2px] font-semibold" style={markStyle}>
275288
276289
</span>
277290
{l}

0 commit comments

Comments
 (0)