Post cards in a grid, or one featured post above the grid.

Last updated

Blog

From the blog

Notes on building the system.

Show code
<BlogList heading="From the blog" items={[{ title, excerpt, href, image?, date, author? }, …]} />

Add

npx @ava-ui/apogee add blog-list

API

Prop Type Default Category Description
eyebrow, heading, description string — content Optional header.
items { title, excerpt, href, image?, date, author? }[] — content Required. date is an ISO string, rendered in a <time>.
label string English content Landmark name when there is no heading.
locale string page locale or 'en' content Date formatting locale.
layout 'grid' | 'featured' 'grid' layout featured shows the first post full width.
align 'start' | 'center' 'start' layout Header alignment.
background, spacing, headingLevel, id layout As on every section.

Layouts

Featured first

Show code
<BlogList layout="featured" items={…} />

Accessibility

  • Each card is an article; the title is the link and the whole card is its hit area.
  • Dates are <time datetime> elements.