Article Listing (Community)

Blog index pages for community-driven blogs. Author presence, engagement signals, and tags give a social feel. These variants suit a running community blog but work for any multi-author community.

Core: .flow, .cluster, .media, .badge, .divider

Extras: .avatar

Custom Styles

A few custom styles are included in the page style block used by some of the patterns.

<style xmlns="http://www.w3.org/1999/html">
    .article-category {
        text-transform: uppercase;
        letter-spacing: 0.05em;
        color: var(--color-accent-text);
        font-size: var(--step--2);
        font-weight: var(--font-weight-medium);
    }
    .article-engagement {
        display: flex;
        align-items: center;
        gap: var(--space-sm);
        color: var(--color-text-subtle);
        font-size: var(--step--1);
    }
    .article-race-badge {
        display: inline-flex;
        align-items: center;
        gap: var(--space-3xs);
        padding: var(--space-3xs) var(--space-xs);
        background: var(--color-accent-subtle);
        border: 1px solid var(--color-accent-border);
        border-radius: var(--radius-md);
        font-size: var(--step--1);
        font-weight: var(--font-weight-medium);
        color: var(--color-accent-text);
    }
</style>

Community feed

Author avatar and name lead each entry. Tags and engagement signals reinforce the social feel. Accent color instead of primary for warmth.

Sarah Chen
Sarah Chen ·

My First Ultra: Lessons from 50 Miles of Humility

What I thought I knew about pacing, nutrition, and mental grit turned out to be mostly wrong. Here's what actually worked.

Race Report Ultra Trail
24 responses · 12 min read

Marcus Webb
Marcus Webb ·

Zone 2 Training Changed Everything for Me

I spent two years running every run hard. Slowing down was the hardest and best thing I've done for my running.

Training Heart Rate
41 responses · 7 min read


<docs-resize>
    <div class="flow flow-space-lg" style="max-inline-size: 42rem">
        <article>
            <div class="media" style="--media-gap: var(--space-sm); --media-align: flex-start">
                <div class="avatar">
                    <img src="https://picsum.photos/seed/runner1/64/64" alt="Sarah Chen"/>
                </div>
                <div class="flow flow-space-2xs">
                    <div class="cluster gap-2xs" style="--cluster-align: baseline">
                        <span class="text-medium">Sarah Chen</span>
                        <span class="text--1 text-subtle">·</span>
                        <time class="text--1 text-subtle" datetime="2026-04-08">Apr 8</time>
                    </div>
                    <h2 class="text-1 text-semibold leading-heading">
                        <a href="#" class="link-plain">My First Ultra: Lessons from 50 Miles of Humility</a>
                    </h2>
                    <p class="text-muted" style="max-inline-size: 50ch">
                        What I thought I knew about pacing, nutrition, and mental grit turned out to be mostly wrong. Here&#39;s what actually worked.
                    </p>
                    <div class="cluster gap-2xs">
                        <span class="badge is-accent text--2">Race Report</span>
                        <span class="badge is-neutral text--2">Ultra</span>
                        <span class="badge is-neutral text--2">Trail</span>
                    </div>
                    <div class="article-engagement">
                        <span>24 responses</span>
                        <span>·</span>
                        <span>12 min read</span>
                    </div>
                </div>
            </div>
        </article>
        <hr class="divider"/>
        <article>
            <div class="media" style="--media-gap: var(--space-sm); --media-align: flex-start">
                <div class="avatar">
                    <img src="https://picsum.photos/seed/runner2/64/64" alt="Marcus Webb"/>
                </div>
                <div class="flow flow-space-2xs">
                    <div class="cluster gap-2xs" style="--cluster-align: baseline">
                        <span class="text-medium">Marcus Webb</span>
                        <span class="text--1 text-subtle">·</span>
                        <time class="text--1 text-subtle" datetime="2026-04-06">Apr 6</time>
                    </div>
                    <h2 class="text-1 text-semibold leading-heading">
                        <a href="#" class="link-plain">Zone 2 Training Changed Everything for Me</a>
                    </h2>
                    <p class="text-muted" style="max-inline-size: 50ch">
                        I spent two years running every run hard. Slowing down was the hardest and best thing I&#39;ve done for my running.
                    </p>
                    <div class="cluster gap-2xs">
                        <span class="badge is-neutral text--2">Training</span>
                        <span class="badge is-neutral text--2">Heart Rate</span>
                    </div>
                    <div class="article-engagement">
                        <span>41 responses</span>
                        <span>·</span>
                        <span>7 min read</span>
                    </div>
                </div>
            </div>
        </article>
        <hr class="divider"/>
        <article>
            <div class="media" style="--media-gap: var(--space-sm); --media-align: flex-start">
                <div class="avatar">
                    <img src="https://picsum.photos/seed/runner3/64/64" alt="Priya Kapoor"/>
                </div>
                <div class="flow flow-space-2xs">
                    <div class="cluster gap-2xs" style="--cluster-align: baseline">
                        <span class="text-medium">Priya Kapoor</span>
                        <span class="text--1 text-subtle">·</span>
                        <time class="text--1 text-subtle" datetime="2026-04-04">Apr 4</time>
                    </div>
                    <h2 class="text-1 text-semibold leading-heading">
                        <a href="#" class="link-plain">The Shoes Debate: Carbon Plates in Training?</a>
                    </h2>
                    <p class="text-muted" style="max-inline-size: 50ch">
                        Our club had a surprisingly heated discussion about this. I tried to settle it with data.
                    </p>
                    <div class="cluster gap-2xs">
                        <span class="badge is-neutral text--2">Gear</span>
                        <span class="badge is-neutral text--2">Discussion</span>
                    </div>
                    <div class="article-engagement">
                        <span>67 responses</span>
                        <span>·</span>
                        <span>5 min read</span>
                    </div>
                </div>
            </div>
        </article>
        <hr class="divider"/>
        <article>
            <div class="media" style="--media-gap: var(--space-sm); --media-align: flex-start">
                <div class="avatar">
                    <span>TL</span>
                </div>
                <div class="flow flow-space-2xs">
                    <div class="cluster gap-2xs" style="--cluster-align: baseline">
                        <span class="text-medium">Tom Lindqvist</span>
                        <span class="text--1 text-subtle">·</span>
                        <time class="text--1 text-subtle" datetime="2026-04-02">Apr 2</time>
                    </div>
                    <h2 class="text-1 text-semibold leading-heading">
                        <a href="#" class="link-plain">Running Through Winter in Minnesota: A Survival Guide</a>
                    </h2>
                    <p class="text-muted" style="max-inline-size: 50ch">
                        Yaktrax, layering systems, and the mental game of running at negative ten degrees.
                    </p>
                    <div class="cluster gap-2xs">
                        <span class="badge is-neutral text--2">Training</span>
                        <span class="badge is-neutral text--2">Winter</span>
                        <span class="badge is-neutral text--2">Gear</span>
                    </div>
                    <div class="article-engagement">
                        <span>18 responses</span>
                        <span>·</span>
                        <span>9 min read</span>
                    </div>
                </div>
            </div>
        </article>
    </div>
</docs-resize>

Race reports

Race name and distance as the structural anchor. Date and location provide context. A specialized layout for event recaps.

50 mi

Western States 100: DNF at Mile 62

The heat took me out. But the 62 miles I did finish taught me more than any race I've completed.

Sarah Chen · · Olympic Valley, CA

26.2 mi

Boston Marathon: Finally Under Three Hours

Four years of training, three previous attempts, and a pacing strategy I almost abandoned at Heartbreak Hill.

Marcus Webb · · Boston, MA

13.1 mi

First Half Marathon at 52: Never Too Late

I started running during lockdown. Two years later, I crossed a finish line I never imagined reaching.

Tom Lindqvist · · Minneapolis, MN

<docs-resize>
    <div class="flow flow-space-lg" style="max-inline-size: 42rem">
        <article>
            <div class="flow flow-space-xs">
                <div class="cluster gap-xs" style="--cluster-align: baseline">
                    <span class="article-race-badge">50 mi</span>
                    <span class="article-category">Race Report</span>
                </div>
                <h2 class="text-2 text-semibold leading-heading">
                    <a href="#" class="link-plain">Western States 100: DNF at Mile 62</a>
                </h2>
                <p class="text-muted" style="max-inline-size: 50ch">
                    The heat took me out. But the 62 miles I did finish taught me more than any race I&#39;ve completed.
                </p>
                <div class="cluster gap-xs text--1 text-subtle">
                    <span>Sarah Chen</span>
                    <span>·</span>
                    <time datetime="2026-04-08">Apr 8, 2026</time>
                    <span>·</span>
                    <span>Olympic Valley, CA</span>
                </div>
            </div>
        </article>
        <hr class="divider"/>
        <article>
            <div class="flow flow-space-xs">
                <div class="cluster gap-xs" style="--cluster-align: baseline">
                    <span class="article-race-badge">26.2 mi</span>
                    <span class="article-category">Race Report</span>
                </div>
                <h2 class="text-2 text-semibold leading-heading">
                    <a href="#" class="link-plain">Boston Marathon: Finally Under Three Hours</a>
                </h2>
                <p class="text-muted" style="max-inline-size: 50ch">
                    Four years of training, three previous attempts, and a pacing strategy I almost abandoned at Heartbreak Hill.
                </p>
                <div class="cluster gap-xs text--1 text-subtle">
                    <span>Marcus Webb</span>
                    <span>·</span>
                    <time datetime="2026-03-21">Mar 21, 2026</time>
                    <span>·</span>
                    <span>Boston, MA</span>
                </div>
            </div>
        </article>
        <hr class="divider"/>
        <article>
            <div class="flow flow-space-xs">
                <div class="cluster gap-xs" style="--cluster-align: baseline">
                    <span class="article-race-badge">13.1 mi</span>
                    <span class="article-category">Race Report</span>
                </div>
                <h2 class="text-2 text-semibold leading-heading">
                    <a href="#" class="link-plain">First Half Marathon at 52: Never Too Late</a>
                </h2>
                <p class="text-muted" style="max-inline-size: 50ch">
                    I started running during lockdown. Two years later, I crossed a finish line I never imagined reaching.
                </p>
                <div class="cluster gap-xs text--1 text-subtle">
                    <span>Tom Lindqvist</span>
                    <span>·</span>
                    <time datetime="2026-03-14">Mar 14, 2026</time>
                    <span>·</span>
                    <span>Minneapolis, MN</span>
                </div>
            </div>
        </article>
        <hr class="divider"/>
        <article>
            <div class="flow flow-space-xs">
                <div class="cluster gap-xs" style="--cluster-align: baseline">
                    <span class="article-race-badge">50K</span>
                    <span class="article-category">Race Report</span>
                </div>
                <h2 class="text-2 text-semibold leading-heading">
                    <a href="#" class="link-plain">Bandera 50K: Trail Running in Texas Hill Country</a>
                </h2>
                <p class="text-muted" style="max-inline-size: 50ch">
                    Rocky technical terrain, January heat, and the most beautiful aid stations I&#39;ve ever seen.
                </p>
                <div class="cluster gap-xs text--1 text-subtle">
                    <span>Priya Kapoor</span>
                    <span>·</span>
                    <time datetime="2026-02-28">Feb 28, 2026</time>
                    <span>·</span>
                    <span>Bandera, TX</span>
                </div>
            </div>
        </article>
    </div>
</docs-resize>

Mixed content

Different entry styles for different post types. Race reports carry a distance badge, training posts lead with a category label, and discussions feel lighter. Visual variety without breaking the overall rhythm.

Sarah Chen
Sarah Chen ·

The heat took me out. But the 62 miles I did finish taught me more than any race I've completed.

24 responses · 12 min read

Marcus Webb
Marcus Webb ·

Zone 2 Training Changed Everything for Me

I spent two years running every run hard. Slowing down was the hardest and best thing I've done.

Training Heart Rate
41 responses · 7 min read


Marcus Webb
Marcus Webb ·

Four years of training, three previous attempts, and a pacing strategy I almost abandoned at Heartbreak Hill.

38 responses · 10 min read
<docs-resize>
    <div class="flow flow-space-llg" style="max-inline-size: 42rem">
        <article>
            <div class="media" style="--media-gap: var(--space-sm); --media-align: flex-start">
                <div class="avatar">
                    <img src="https://picsum.photos/seed/runner1/64/64" alt="Sarah Chen"/>
                </div>
                <div class="flow flow-space-2xs">
                    <div class="cluster gap-2xs" style="--cluster-align: baseline">
                        <span class="text-medium">Sarah Chen</span>
                        <span class="text--1 text-subtle">·</span>
                        <time class="text--1 text-subtle" datetime="2026-04-08">Apr 8</time>
                    </div>
                    <div class="cluster gap-xs" style="--cluster-align: baseline">
                        <span class="article-race-badge">50 mi</span>
                        <h2 class="text-1 text-semibold leading-heading">
                            <a href="#" class="link-plain">Western States 100: DNF at Mile 62</a>
                        </h2>
                    </div>
                    <p class="text-muted" style="max-inline-size: 50ch">
                        The heat took me out. But the 62 miles I did finish taught me more than any race I&#39;ve completed.
                    </p>
                    <div class="article-engagement">
                        <span>24 responses</span>
                        <span>·</span>
                        <span>12 min read</span>
                    </div>
                </div>
            </div>
        </article>
        <hr class="divider"/>
        <article>
            <div class="media" style="--media-gap: var(--space-sm); --media-align: flex-start">
                <div class="avatar">
                    <img src="https://picsum.photos/seed/runner2/64/64" alt="Marcus Webb"/>
                </div>
                <div class="flow flow-space-2xs">
                    <div class="cluster gap-2xs" style="--cluster-align: baseline">
                        <span class="text-medium">Marcus Webb</span>
                        <span class="text--1 text-subtle">·</span>
                        <time class="text--1 text-subtle" datetime="2026-04-06">Apr 6</time>
                    </div>
                    <h2 class="text-1 text-semibold leading-heading">
                        <a href="#" class="link-plain">Zone 2 Training Changed Everything for Me</a>
                    </h2>
                    <p class="text-muted" style="max-inline-size: 50ch">
                        I spent two years running every run hard. Slowing down was the hardest and best thing I&#39;ve done.
                    </p>
                    <div class="cluster gap-2xs">
                        <span class="badge is-neutral text--2">Training</span>
                        <span class="badge is-neutral text--2">Heart Rate</span>
                    </div>
                    <div class="article-engagement">
                        <span>41 responses</span>
                        <span>·</span>
                        <span>7 min read</span>
                    </div>
                </div>
            </div>
        </article>
        <hr class="divider"/>
        <article>
            <div class="media" style="--media-gap: var(--space-sm); --media-align: flex-start">
                <div class="avatar">
                    <img src="https://picsum.photos/seed/runner3/64/64" alt="Priya Kapoor"/>
                </div>
                <div class="flow flow-space-2xs">
                    <div class="cluster gap-2xs" style="--cluster-align: baseline">
                        <span class="text-medium">Priya Kapoor</span>
                        <span class="text--1 text-subtle">·</span>
                        <time class="text--1 text-subtle" datetime="2026-04-04">Apr 4</time>
                    </div>
                    <h2 class="text-1 text-semibold leading-heading">
                        <a href="#" class="link-plain">The Shoes Debate: Carbon Plates in Training?</a>
                    </h2>
                    <p class="text--1 text-muted" style="max-inline-size: 50ch">
                        Our club had a surprisingly heated discussion about this. I tried to settle it with data. Spoiler: I didn&#39;t settle it.
                    </p>
                    <div class="article-engagement">
                        <span>67 responses</span>
                        <span>·</span>
                        <span>5 min read</span>
                    </div>
                </div>
            </div>
        </article>
        <hr class="divider"/>
        <article>
            <div class="media" style="--media-gap: var(--space-sm); --media-align: flex-start">
                <div class="avatar">
                    <img src="https://picsum.photos/seed/runner2/64/64" alt="Marcus Webb"/>
                </div>
                <div class="flow flow-space-2xs">
                    <div class="cluster gap-2xs" style="--cluster-align: baseline">
                        <span class="text-medium">Marcus Webb</span>
                        <span class="text--1 text-subtle">·</span>
                        <time class="text--1 text-subtle" datetime="2026-03-21">Mar 21</time>
                    </div>
                    <div class="cluster gap-xs" style="--cluster-align: baseline">
                        <span class="article-race-badge">26.2 mi</span>
                        <h2 class="text-1 text-semibold leading-heading">
                            <a href="#" class="link-plain">Boston Marathon: Finally Under Three Hours</a>
                        </h2>
                    </div>
                    <p class="text-muted" style="max-inline-size: 50ch">
                        Four years of training, three previous attempts, and a pacing strategy I almost abandoned at Heartbreak Hill.
                    </p>
                    <div class="article-engagement">
                        <span>38 responses</span>
                        <span>·</span>
                        <span>10 min read</span>
                    </div>
                </div>
            </div>
        </article>
    </div>
</docs-resize>

Accessibility