Skip to content

Feed

Present live product activity while loading older or newer events without losing reading position.

Usage

Finite feed

Review the complete activity history for one release.

Release activityproduction · release-2026.08
Live
Production deployment completedHealthyRelease 2026.08 is healthy in all regions.Deploy bot · Just now
Production deployment startedRunningRolling out web@2.8.0 to 12 instances.Deploy bot · 2 min ago
Release approvedMina approved the production promotion.Mina Kim · 18 min ago
Required checks passed12/12Unit, integration, accessibility, and bundle checks completed.CI · 24 min ago
Release note updatedAdded migration guidance for the Vue adapter.Alex Chen · 41 min ago
Version 2.8.0 taggedCreated tag v2.8.0 from commit 9e41c2a.Release bot · 56 min ago
Security review completedPassedNo blocking findings detected for this release.Security bot · 1 hr ago

Complete history · 7 events

Release 2026.08

Examples

Load newer items

Surface new deployment updates without interrupting the activity currently being read.

Release activityproduction · release-2026.08
Live
Release approvedMina approved the production promotion.Mina Kim · 18 min ago
Required checks passed12/12Unit, integration, accessibility, and bundle checks completed.CI · 24 min ago
Release note updatedAdded migration guidance for the Vue adapter.Alex Chen · 41 min ago
Version 2.8.0 taggedCreated tag v2.8.0 from commit 9e41c2a.Release bot · 56 min ago
Release 2026.08

Load earlier items

Append older release events while preserving the current activity order.

Release activityproduction · release-2026.08
Live
Production deployment completedHealthyRelease 2026.08 is healthy in all regions.Deploy bot · Just now
Production deployment startedRunningRolling out web@2.8.0 to 12 instances.Deploy bot · 2 min ago
Release approvedMina approved the production promotion.Mina Kim · 18 min ago
Required checks passed12/12Unit, integration, accessibility, and bundle checks completed.CI · 24 min ago
Release 2026.08

API

Vue package: @sectile/vue/feed

Components
  • FeedRoot
  • FeedItem
  • FeedLoadEarlier
  • FeedLoadNewer

Props

FeedRootProps

as

Element or component rendered for this part.

asChild

Whether to merge this part into its single child instead of rendering a wrapper.

defaultHighlightedValue

Initially highlighted value for uncontrolled state.

disabled

Whether interaction is unavailable.

getPosition

Returns the numeric position represented by an item.

items

Ordered item values managed by the component.

label

Accessible name announced for the control.

requestGeneration

Generation token returned by the window request being resolved.

revision

Application revision used to refresh derived content.

setSize

Total number of items represented by the current feed window.

FeedPartProps

as

Element or component rendered for this part.

asChild

Whether to merge this part into its single child instead of rendering a wrapper.

Slots

FeedRootSlotProps

disabled

Whether interaction is unavailable.

highlightedValue

Value currently highlighted for interaction.

pending

Whether a request is currently pending.

requestGeneration

Generation of the current or most recently issued window request.

revision

Revision of the current state snapshot.

FeedItemSlotProps

disabled

Whether interaction is unavailable.

highlighted

Whether this item is highlighted for interaction.

highlightedValue

Value currently highlighted for interaction.

pending

Whether a request is currently pending.

requestGeneration

Generation of the current or most recently issued window request.

revision

Revision of the current state snapshot.

value

Current value exposed by this contract.

Events

FeedRoot

highlight

Emitted when the highlighted item changes.

requestWindow

Emitted when the feed needs items outside the current window.

Other types

FeedPositionResolver

ts
type FeedPositionResolver = NonNullable<FeedRootProps['getPosition']>

FeedHighlightHandler

ts
type FeedHighlightHandler = (value: string | null) => void

FeedRequestWindowHandler

ts
type FeedRequestWindowHandler = (direction: FeedDirection, anchor: string | null, revision: number, requestGeneration: number) => void

FeedDirection

ts
type FeedDirection = CollectionWindowDirection

Parts

Shared scope: [data-scope="feed"]. Combine it with a part selector to keep styles local to this component.

PartSelectorRoleExtra attributes
root[data-part="root"]Defines the component boundary and owns its composed parts.
item[data-part="item"]Represents one selectable or actionable item.
load-earlier[data-part="load-earlier"]Requests items before the visible feed window.
load-newer[data-part="load-newer"]Requests items after the visible feed window.

Keyboard interaction

KeyBehavior
Arrow Down / Page DownMove to the next article.
Arrow Up / Page UpMove to the previous article.
TabMove into interactive controls inside the current article.

Accessibility

The root uses feed semantics and each item is an article with optional position and set-size metadata.

See the corresponding WAI-ARIA pattern for the host accessibility contract.

Released under the MIT License.