Skip to main content
Normal UI

Organism Content <Feed>

Live example

Customer reviews

In the list, Page Down and Page Up move between items.

Sari Wulandari

The linen shirt fits perfectly. Fast delivery to Bandung.

Budi Hartono

Teak board is heavier than I expected, in a good way.

Dewi Lestari

Batik runner colours are exactly like the photos.

Feed

A scrolling list of articles that grows as people read: role="feed" containing focusable <article>s with aria-posinset and aria-setsize.

Consumer provides: the articles and a loader.

  • Each article is focusable (tabindex="0"), labelled by its heading and described by its body.
  • Set aria-setsize="-1" when the total is unknown; set the real number when it is known.
  • Page Down and Page Up move focus between articles. Tab moves into an article’s own links and buttons.
  • While loading, set aria-busy="true" on the feed and clear it after adding the new articles.
  • Always offer a Load more button too; never rely on infinite scroll alone, or the footer becomes unreachable.

Composition

Made of
Loading (molecule), Button (atom)

React

import { Feed } from '@imsus/normal-ui-react';

<Feed label="Customer reviews" articles={reviews} busy={loading} onLoadMore={loadMore} />