Skip to content

Implement terminal aesthetic font combination: Space Grotesk, Inter, JetBrains Mono#56

Merged
HackingGate merged 2 commits intomainfrom
copilot/try-font-combination
Dec 13, 2025
Merged

Implement terminal aesthetic font combination: Space Grotesk, Inter, JetBrains Mono#56
HackingGate merged 2 commits intomainfrom
copilot/try-font-combination

Conversation

Copy link

Copilot AI commented Dec 12, 2025

Replaces the single-font setup with a three-font system optimized for technical content: Space Grotesk for headings, Inter for body text, and JetBrains Mono for code blocks.

Changes:

  • app/layout.tsx: Import and configure three fonts with dedicated CSS variables

    • --font-heading → Space Grotesk
    • --font-body → Inter
    • --font-code → JetBrains Mono
  • css/tailwind.css: Wire up font variables to semantic uses

    • Map --font-sans to --font-body for default text
    • Add --font-mono mapped to --font-code for code blocks
    • Apply --font-heading to all heading elements (h1-h6)
const spaceGrotesk = Space_Grotesk({ 
  subsets: ['latin'], 
  variable: '--font-heading' 
})
const inter = Inter({ 
  subsets: ['latin'], 
  variable: '--font-body' 
})
const jetbrainsMono = JetBrains_Mono({ 
  subsets: ['latin'], 
  variable: '--font-code' 
})
--font-sans: var(--font-body), ui-sans-serif, system-ui, sans-serif;
--font-mono: var(--font-code), ui-monospace, 'Cascadia Code', Menlo, Consolas;

:where(h1, h2, h3, h4, h5, h6) {
  font-family: var(--font-heading), ui-sans-serif, system-ui, sans-serif;
}

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • fonts.googleapis.com
    • Triggering command: /usr/local/bin/node /usr/local/bin/node /home/REDACTED/work/tailwind-nextjs-blog/tailwind-nextjs-blog/node_modules/next/dist/bin/next build (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

Original prompt

This section details on the original issue you should resolve

<issue_title>Try font</issue_title>
<issue_description>Try this combination

Option 1: The "Terminal" Aesthetic (Best fit for your brand)
This pair gives your site a distinct "CLI / Coding" vibe without sacrificing readability for long blog posts.

Headings: Space Grotesk (A quirky, geometric sans that feels "techy")

Body: Inter (Standard, highly legible) or Space Mono (If you want to go full hacker, though it can be harder to read in long paragraphs)

Code Blocks: JetBrains Mono (The gold standard for code)

import { Space_Grotesk, Inter, JetBrains_Mono } from 'next/font/google'

const spaceGrotesk = Space_Grotesk({ subsets: ['latin'], variable: '--font-heading' })
const inter = Inter({ subsets: ['latin'], variable: '--font-body' })
const jetbrains = JetBrains_Mono({ subsets: ['latin'], variable: '--font-code' })

</issue_description>

<agent_instructions>Don't create previews I already have a pipeline for it.</agent_instructions>

Comments on the Issue (you are @copilot in this section)


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

Summary by CodeRabbit

  • Style
    • Updated typography system with new font selections for body text and headings.
    • Added monospace font option for improved code display.
    • Refined heading font styling across the application.

✏️ Tip: You can customize this high-level summary in your review settings.

@coderabbitai
Copy link

coderabbitai bot commented Dec 12, 2025

Walkthrough

This pull request implements a multi-font typography system replacing a single-font approach. Font configuration now uses Space Grotesk for headings, Inter for body text, and JetBrains Mono for code blocks, with corresponding CSS variables added to Tailwind's theme configuration.

Changes

Cohort / File(s) Summary
Font imports and layout configuration
app/layout.tsx
Added Inter and JetBrains_Mono font imports; renamed spaceGrotesk constant and updated CSS variable to --font-heading; introduced inter and jetbrainsMono font configurations with --font-body and --font-code variables respectively; applied all three font variables to root element className.
Tailwind theme and utilities
css/tailwind.css
Updated --font-sans CSS variable from var(--font-space-grotesk) to var(--font-body); added new --font-mono CSS variable with fallback stack; introduced new utilities rule applying --font-heading to all heading elements (h1–h6).

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~5 minutes

  • Straightforward configuration changes following a consistent pattern across two files
  • No logic modifications or control flow alterations
  • Font import syntax and CSS variable mappings are standard and well-established

Poem

🐰 Three fonts hop into view,
Space Grotesk leads the heading crew,
Inter flows smooth for bodies true,
JetBrains Mono codes debut! 🖤

Pre-merge checks and finishing touches

❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. You can run @coderabbitai generate docstrings to improve docstring coverage.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title directly and accurately describes the main change: implementing a three-font combination (Space Grotesk, Inter, JetBrains Mono) for a terminal aesthetic, which is the primary objective of the PR.
Linked Issues check ✅ Passed The PR successfully implements all coding requirements from issue #55: imports three Google fonts with correct variable assignments, configures them in the layout, and applies them semantically across headings, body, and code blocks.
Out of Scope Changes check ✅ Passed All changes are directly related to the font implementation objective. CSS updates to Tailwind variables and HTML layout modifications are necessary in-scope components of the font system setup.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch copilot/try-font-combination

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Co-authored-by: HackingGate <8541644+HackingGate@users.noreply.github.com>
@cloudflare-workers-and-pages
Copy link

cloudflare-workers-and-pages bot commented Dec 12, 2025

Deploying tailwind-nextjs-blog with  Cloudflare Pages  Cloudflare Pages

Latest commit: 786a2ba
Status: ✅  Deploy successful!
Preview URL: https://d29be8d0.tailwind-nextjs-blog.pages.dev
Branch Preview URL: https://copilot-try-font-combination.tailwind-nextjs-blog.pages.dev

View logs

Copilot AI changed the title [WIP] Add font combination for terminal aesthetic Implement terminal aesthetic font combination: Space Grotesk, Inter, JetBrains Mono Dec 12, 2025
Copilot AI requested a review from HackingGate December 12, 2025 09:48
@HackingGate HackingGate marked this pull request as ready for review December 13, 2025 17:56
Copilot AI review requested due to automatic review settings December 13, 2025 17:56
@HackingGate
Copy link
Owner

@coderabbitai review

@coderabbitai
Copy link

coderabbitai bot commented Dec 13, 2025

✅ Actions performed

Review triggered.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR implements a three-font system optimized for technical content, replacing the previous single-font setup with Space Grotesk for headings, Inter for body text, and JetBrains Mono for code blocks.

  • Import and configure three Google Fonts with dedicated CSS variables
  • Map font variables to semantic uses in Tailwind CSS configuration
  • Apply heading font to all h1-h6 elements globally

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.

File Description
app/layout.tsx Imports and configures Space Grotesk, Inter, and JetBrains Mono fonts with CSS variables (--font-heading, --font-body, --font-code) and applies them to the html element
css/tailwind.css Maps font variables to Tailwind's --font-sans and --font-mono, and applies the heading font to all h1-h6 elements via the utilities layer

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 0

🧹 Nitpick comments (1)
app/layout.tsx (1)

15-31: Font configurations are properly structured.

Each font is correctly configured with:

  • subsets: ['latin'] for appropriate character coverage
  • display: 'swap' to prevent flash of invisible text
  • Semantic CSS variable names that match tailwind.css mappings

Note that loading three custom fonts will increase initial page weight. Consider monitoring Core Web Vitals (LCP, CLS) to ensure acceptable performance.

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between ffdf86b and 786a2ba.

📒 Files selected for processing (2)
  • app/layout.tsx (3 hunks)
  • css/tailwind.css (2 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (5)
  • GitHub Check: WIP
  • GitHub Check: WIP
  • GitHub Check: WIP
  • GitHub Check: WIP
  • GitHub Check: Cloudflare Pages
🔇 Additional comments (4)
css/tailwind.css (2)

10-13: Font variable mappings are well-structured.

The font variable chain correctly references --font-body for sans-serif and --font-code for monospace, with appropriate system font fallbacks. This properly integrates with the font definitions in app/layout.tsx.


84-87: Global heading font application looks correct.

The :where() selector applies Space Grotesk to all headings with zero specificity, making it easy to override when needed. This matches the PR objective to use Space Grotesk for headings.

app/layout.tsx (2)

5-5: Font imports are correct.

All three Google Fonts are properly imported using the Next.js font API, which optimizes font loading and prevents layout shift.


79-79: Font configuration is correctly implemented and requires no changes.

The fonts are properly configured using next/font/google with the display: 'swap' property on all three fonts (Space_Grotesk, Inter, and JetBrains_Mono). Next.js automatically downloads and self-hosts these fonts at build time, serving them as static assets in production—there is no runtime dependency on the Google Fonts CDN. The font CSS variables (--font-heading, --font-body, --font-code) are correctly applied to the HTML element and used throughout the stylesheet with appropriate fallbacks.

@HackingGate HackingGate merged commit e4e92b9 into main Dec 13, 2025
9 checks passed
@HackingGate HackingGate deleted the copilot/try-font-combination branch December 13, 2025 18:06
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.

Try font

2 participants