frontend-google-fonts
Google Fonts
Typography setup for web projects. Font pairings + performance optimization.
When to Use
- Setting up project fonts
- Need font pairing recommendations
- Optimizing font loading
Process
SELECT → CONFIGURE → APPLY
- Choose fonts for project type
- Configure in Next.js
- Add to Tailwind
Quick Start (Next.js)
// lib/fonts.ts
import { Inter, Plus_Jakarta_Sans } from 'next/font/google'
export const inter = Inter({
subsets: ['latin'],
display: 'swap',
variable: '--font-inter',
})
export const jakarta = Plus_Jakarta_Sans({
subsets: ['latin'],
display: 'swap',
variable: '--font-jakarta',
})
// app/layout.tsx
<html className={`${inter.variable} ${jakarta.variable}`}>
// tailwind.config.ts
fontFamily: {
sans: ['var(--font-inter)'],
display: ['var(--font-jakarta)'],
}
Font Pairing Presets
Modern SaaS:
Heading: Plus Jakarta Sans
Body: Inter
Corporate:
Heading: Source Sans 3
Body: Source Serif 4
Editorial:
Heading: Playfair Display
Body: Lora
Tech/Dev:
Heading: Geist
Body: Inter
Code: Geist Mono
Startup/Friendly:
Heading: Outfit
Body: Nunito
Top Font Choices
| Font | Category | Best For |
|---|---|---|
| Inter | Sans | Universal default |
| Plus Jakarta Sans | Sans | Modern SaaS |
| DM Sans | Sans | Clean startups |
| Geist | Sans | Dev tools |
| Playfair Display | Serif | Elegant headlines |
| Lora | Serif | Long-form reading |
| JetBrains Mono | Mono | Code blocks |
Performance Tips
Variable fonts: Use Inter, not Roboto with weight array
Subset: Only 'latin' unless multilingual
Display swap: Always set display: 'swap'
Self-host: next/font auto self-hosts (no external requests)
Typography Scale
text-xs: 12px
text-sm: 14px
text-base: 16px
text-lg: 18px
text-xl: 20px
text-2xl: 24px
text-3xl: 30px
text-4xl: 36px
Decision by Project Type
| Type | Heading | Body |
|---|---|---|
| SaaS Dashboard | Inter | Inter |
| Marketing Site | Plus Jakarta | Inter |
| Blog | Playfair Display | Lora |
| Dev Docs | Geist | Inter |
| Enterprise | Source Sans | Source Serif |
Resources:
More from petbrains/mvp-builder
frontend-magic-ui
Polished SaaS landing page components. Use for number tickers/stats animations, logo marquees, bento grids, device mockups (iPhone, Safari), shimmer/rainbow buttons, typing effects. Professional marketing polish built on Framer Motion + Tailwind. For dramatic hero effects use Aceternity, for basic UI use shadcn.
81figma-design-extraction
Extract design tokens, screen structure, and visual references from Figma files. Use whenever a figma.com URL appears in the conversation, when someone mentions Figma tokens, variables, design system extraction, or screen captures. Also use when calling get_variable_defs, get_design_context, get_metadata, or get_screenshot — this skill defines how to use them effectively. Trigger for phrases like "get from Figma", "extract design", "Figma variables", "design tokens from Figma", "capture screens", or any figma.com/design link. Even if the user just pastes a Figma link without instructions, use this skill to parse it and decide what to extract.
13code-analyzer
Comprehensive codebase analysis for building mental model of project structure, dependencies, and implementation context. Use when needing to: (1) Understand project architecture before review or documentation, (2) Find dependencies and shared modules, (3) Trace execution paths and abstraction layers for similar features, (4) Locate implementation markers (AICODE-*), (5) Prepare context for review, memory generation, or agent creation. Triggers on: analyze code, load code context, scan codebase, understand project structure, trace feature.
12sequential-thinking
Structured reasoning framework for complex multi-step analysis using MCP sequential thinking tool. Provides state-based reasoning, branch/revise decision thresholds, quality scoring, and convergence rules for problems requiring 3+ logical steps, debugging unclear root causes, or handling multiple valid approaches.
12figma-design-generate
>
12context7
Up-to-date library documentation retrieval using Context7 MCP tools. Process THINK → RESOLVE → FETCH → APPLY. Use when fetching library docs, resolving package names to IDs, getting implementation guides, exploring API references. Provides package resolution strategy, trust score evaluation, token scaling (3K-20K), topic selection patterns.
11