Heading

6 variants. Open one in isolation: use the link on each card.

Section title

Section title

Section title

Section title

Section title
Section title

src/ui/0_atoms/Heading.astro
---
/**
* Semantic page and section title. Default: Cooper serif; meta: Source Code Pro (`isMeta`).
* Use `class` for layout-specific spacing and typography (e.g. feed listing vs article title).
*/
interface Props {
level?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6'
/** Source Code Pro instead of Cooper (same baseline `h1`–`h6` scale from global CSS). */
isMeta?: boolean
class?: string
/** Shown when the default slot is empty. */
label?: string
}
const { level = 'h1', isMeta = false, class: className, label } = Astro.props
const Tag = level
---
<Tag class:list={[isMeta ? 'font-mono' : 'font-serif', 'mt-0 font-medium text-ink', className]}>
<slot>{label}</slot>
</Tag>