Skip to main content

Design system components

ProjectDetailLayout

Case study detail layout shell.

Status: alpha. Group: layout. Markdown version: /design-system/components/project-detail-layout.md

When to use

Case study detail layout shell.

When not to use

The contract records no forbidden uses.

Look-alikes

The contract names no look-alike with a deciding condition.

Props

ProjectDetailLayout props
PropTypeDefaultDescriptionRequired
navReactNodenoneNavigation slot (top)No
heroReactNodenoneHero section slot.Yes
childrenReactNodenoneMain content sections.Yes
ctaReactNode | nullnoneCall-to-action section slot (between content and related projects). Renders WorkCTA by default. Pass null to suppress.No
relatedProjectsReactNodenoneRelated projects section slot.No
showScrollProgressbooleantrueShow scroll progress indicator.No
classNamestringnoneCustom className.No
donnyTargetstringnoneDonny site action target id for the project article.No
langstringenLanguage of the case-study content.No

Variants

No variant dimensions and no props with a fixed set of values.

Invalid combinations

The contract records no invalid combinations.

Keyboard

The contract records no keyboard interaction.

Rules

Every item under When not to use is a MUST NOT. MUST and SHOULD follow RFC 2119.

ProjectDetailLayout rules
LevelRuleHow it is checked
MUSTRequired stories produce no axe violations at the configured severity.Not yet verified: no evidence record. WCAG 2.5.8.
MUSTThe accessibility tree (role, name, state) matches the committed snapshot for every required story.Not yet verified: no evidence record. WCAG 1.3.1, 4.1.2.
MUSTThe component remains legible and operable under a real browser forced-colors: active pass.Not yet verified: no evidence record.
MUST NOTMaintainers: Do not invent parallel primitives inside this folder.Release review; not machine-checked.
MUST NOTMaintainers: Do not promote to stable without production consumer evidence.Release review; not machine-checked.

Install and import

  • In-repo only. ProjectDetailLayout is not exported from @digitaltableteur/react, so there is no public import path.
  • Alpha components are internal and never exported.