Adventureland Registry

Section Feeds

Top-level composer that combines FilterSection and ContentListSection in a 4-column responsive grid. Bring your own data — no seed values baked in.

SectionFeeds is the ready-to-use feeds page layout. It wires up internal state for accordion open/close and item expansion so you only need to pass items, filterTypes and filterTopics. All three are props — import your own seed data in the consuming page.

Installation

npx shadcn@latest add @adv/section-feeds

Usage

import { SectionFeeds } from '@/components/section-feeds';
import { myItems, myFilterTypes, myFilterTopics } from '@/data/content';

export default function FeedsPage() {
  return (
    <SectionFeeds
      items={myItems}
      filterTypes={myFilterTypes}
      filterTopics={myFilterTopics}
    />
  );
}

Example

Props

PropTypeDefaultDescription
itemsContentItem[]Content items to display in the list panel.
filterTypesFilterOption[]Options for the "Type" filter accordion group.
filterTopicsFilterOption[]Options for the "Topic" filter accordion group.
defaultOpenAccordionsstring[]["type", "topic"]Accordion group keys open on first render.
defaultExpandedItemstring | nullfirst item idId of the item expanded on first render. Pass null to start collapsed.

On this page