Skip to content

feat(site): campfire homepage and site-wide theme - #3258

Open
JoshuaKGoldberg wants to merge 6 commits into
mainfrom
homepage-campfire-redesign
Open

feat(site): campfire homepage and site-wide theme#3258
JoshuaKGoldberg wants to merge 6 commits into
mainfrom
homepage-campfire-redesign

Conversation

@JoshuaKGoldberg

@JoshuaKGoldberg JoshuaKGoldberg commented Aug 21, 2026

Copy link
Copy Markdown
Collaborator

PR Checklist

Overview

Implements a campfire-y design across the whole site. It's midnight-y dark blue in dark mode, and a light orange-y tint in light mode.

Dark Light
Screenshot 2026-08-21 at 1 31 01 PM Screenshot 2026-08-21 at 1 31 06 PM

The logo could still use work; I'll file a followup if this goes in.

❤️‍🔥

Implements the campfire homepage design across the whole site rather than
only the landing page, so docs and blog pages inherit the same palette,
typography, and card treatment.

- Maps the campfire palette onto Starlight's token system for both light
  and dark modes, adding Fraunces/Nunito/JetBrains Mono.
- Rebuilds the homepage as hero, install band, feature pack, trail map,
  and community sections, with a custom Starlight Hero override.
- Uses the existing Flint logo for hero and community artwork instead of
  generated illustrations.
- Pulls the trail map's rules from `@flint.fyi/rule-data` so their
  descriptions and presets stay in sync with the plugin.

The design's `--ember` was used as both a flame fill and a text color,
which left light-mode labels at 2.0:1 and white-on-ember buttons at
2.6:1. Text and button fills now use a deepened ember instead.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@changeset-bot

changeset-bot Bot commented Aug 21, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 6db3a3d

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@netlify

netlify Bot commented Aug 21, 2026

Copy link
Copy Markdown

Deploy Preview for flint-fyi ready!

Name Link
🔨 Latest commit 6db3a3d
🔍 Latest deploy log https://app.netlify.com/projects/flint-fyi/deploys/6a88a870306dbe00086d4551
😎 Deploy Preview https://deploy-preview-3258--flint-fyi.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

@codecov

codecov Bot commented Aug 21, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

JoshuaKGoldberg and others added 3 commits August 21, 2026 13:21
- The banner defaulted to Starlight's `--sl-color-bg-accent` with inverted
  text, so it read dark in light mode and light in dark mode. It now sets
  `--sl-color-banner-bg` and `--sl-color-banner-text` per theme.
- The four feature cards all shared one green tag. Each now carries its own
  hue for its icon tile and label, at 6.8:1 or better in both themes.
- Centers the Netlify badge below the homepage credits.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
JoshuaKGoldberg and others added 2 commits August 21, 2026 15:13
- Stacks the hero's calls to action full-width below 30rem, so the pair of
  buttons and the orphaned GitHub link stop competing for one cramped row.
  The assurance list stacks alongside them.
- Stacks each feature card's icon above its copy below 30rem, giving the
  headings the full card width instead of roughly half.
- Scales down the hero headline floor and both eyebrows so they stop
  crowding the viewport edge and wrapping mid-label.
- Marks the homepage sections `not-content`. They were inheriting
  `.sl-markdown-content`'s sibling margins, which added stray gaps between
  card icons and their labels; headings now set their own line-height,
  which that opt-out no longer supplies.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
`.glow` used `inset: -10%`, so its box extended past the viewport and grew
the document's scrollable width: 410px against a 390px viewport, 826 against
768. Anchoring it to `inset: 0` and leaning on the blur keeps the same halo
without the sideways scroll.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@JoshuaKGoldberg
JoshuaKGoldberg marked this pull request as ready for review August 21, 2026 20:11
tagline: >-
Flint tidies up JavaScript, TypeScript, and more with inviting defaults,
gentle reporting, and wonderful performance.
title: Pull up a log.<br /><span class="hero-ember">Lint by the fire.</span>

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[Question] Is this too marketing-y? I'm leaning towards switching this to have the big text say "A fast, friendly linter" for the first line & "for JavaScript, TypeScript, and more" for the second (or something like that). 🤔

@michaelfaith michaelfaith Aug 21, 2026

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, some of the descriptions in the second part are odd. I've never seen a set of defaults, and said "wow those were some inviting defaults" 😅 Now, sensible defaults is a bit better. "gentle reporting" is similar. I'm not sure I've ever yearned for "gentle" reporting.

I'm leaning towards switching this to have the big text say "A fast, friendly linter" for the first line & "for JavaScript, TypeScript, and more" for the second

I like that more. simple and to the point.

@michaelfaith

Copy link
Copy Markdown
Member

This is more of a design / content critique than a pure code review. I definitely like the color scheme more than the previous one, so thumbs up on the new palette👍 I'm not 100% on the title font choice, but it's not bad either. Just feels slightly misplaced, and I can't put my finger on why. It give me a similar feel as Cooper Black, the classic advertising / newspaper font, which isn't what the palette really embodies. Again, I don't hate it, but it may be worth exploring other options for the title font.

image

I'm not sure that I would know what to expect clicking "Light the fire" would actually take me to. Explore the trail makes sense as a guide book / documentation. But I wouldn't have guessed clicking Light the fire would take me to an about page.

screenshot 1

The analogies here are disjointed. For one, pitching a tent is also an innuendo, and i'd probably avoid that lol, but also, are we pitching a tent or starting a fire? Because I'm not sure why I would need a fire-starter to pitch a tent. Maybe something like "Roasting mallows in moments..." -> "pick your favorite fire-starter" 😆

image

These floating emojis look odd in mobile. Recommend dropping those for smaller screens.

Frustrated with slow linting that doesn't catch what you care about? Or maybe your linter is fast, but doesn't include powerful lint rules? Let Flint help you out. ☕

This is mostly good, but "doesn't include powerful lint rules" feels a bit weaker than the rest. Maybe "doesn't meet your linting needs", though that's a bit generic. What about "doesn't lint for all the things you think it should" (though that's long...). "Let flint help you out" -> "Give flint a shot"?

image

Keep it simple. "Get started"?

image

I really want to like this; the analogy is clever. But calling a set of four benefits "tools" feels odd. Spitballing, maybe something like four flares or beacons to light the way? Or maybe change up the analogy entirely to be about using stars in the sky to guide your way (e.g. north star).

image

I do like my warm drinks 😍

image

Minor, but "Join our Discord; Read our blog" feels more inviting

And I mentioned this in slack, but the mobile experience on the home page feels cluttered. Would be good to use some container queries to reduce some of the complexity of the hero section for mobile.

image

@lishaduck

Copy link
Copy Markdown
Member

Yeah I'm away from computer rn so I'll avoid going too deep, but beyond the language @michaelfaith already highlighted, in general I feel like the colors clash. It feels like you had Claude start with an editorial style site but had Codex finish with a dashboard. It feels noisy; there's glow, colored shadows, dots, and just a lot of text. Nobody wants to read text. Oh, and starting with an em dash is a bold choice. 🙃
I will say, I've found impeccable.style to help immensely with just getting rid of those.

I won't say that it's not an improvement over the status quo in a vacuum but I can't say I love it.

I know that's a fair bit of criticism without a lot of positivity, I'm just trying to keep it brief and failing (as evidenced by this)

@lishaduck

Copy link
Copy Markdown
Member

I did just see the message in Dis and def it looks significantly better on desktop :)

@JoshuaKGoldberg

Copy link
Copy Markdown
Collaborator Author

colors clash

Yeah I think I personally focused more on the light mode, and then the dark mode I just kind of splashed on top. I think I'll try out some less contrast-y colors for it. Maybe, like green (leaves) and/or brown (wood) with the dark blue (sky)? Something thematic like that?

criticism without a lot of positivity

Hit me! This is great!! 😁

(wording in general)
pitching a tent is also an innuendo

LOL. That didn't occur to me 🤦

I was so amused by the suggested camping puns, and then ones I added, that I definitely went overboard. I'll dial it down and try to sprinkle them more liberally.

cluttered

👍 Agreed. I made a little progress but not enough.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

📝 Documentation: Rework branding

3 participants