FAQ
ImplementedFAQ section organism — thin composition wrapper over the Accordion molecule (R1 composition fix, 2026-08-27): question maps to the accordion header (button + aria-expanded/aria-controls), answer to the region panel. Panels stay independently openable (multiple is always on); roving ArrowUp/ArrowDown/Home/End keyboard navigation is owned by the molecule. Ships in a card <section aria-label> with an <h2> heading — FR default, EN via locale, or a full heading override. Requires JavaScript.
components/organisms/faq/FAQ.tsxFAQ section organism — question/answer list composed on the Accordion molecule (button + aria-expanded headers, roving keyboard focus, independently openable panels) with a locale-aware default heading.
FAQ
design-system
FAQ organism preview and API reference — question→accordion header, answer→panel.
Questions fréquentes
Props
FAQ
itemsFAQItem[]—2-10 items ({ id, question, answer }) — the composed Accordion molecule dev-warns outside that range and on duplicate ids (NASA Rule 2)
headingstringlocale-awareSection heading text; defaults to 'Questions fréquentes' (fr) or 'Frequently asked questions' (en).
locale"fr" | "en"'fr'Selects the default heading copy when heading is omitted.
classNamestring—Class appended to the card section.
<FAQ />Accessibility
Type
1 ruleARIA
1 ruleUsage
Import
import { FAQ } from "@epasslive/design-system"Example 1
<FAQ items={faqItems} heading="Questions fréquentes" />Example 2
<FAQ items={faqItems} locale="en" />Anti-patterns
— Do not fetch data directly in organisms
— Avoid tight coupling to specific data sources