Read the human documentation before changing Shade:
README.mdcovers integration, development, and package tests.- Introduction and Layers explain the design system and where code belongs.
- Contributing defines implementation, Storybook, testing, and review requirements.
- Review the common anti-patterns before making a change.
- Component contracts, patterns, primitives, recipes, and tokens provide layer-specific guidance.
- Use the repository Shade skills for the relevant task. In particular, use
shade-component-decisionbefore adding a component or pattern, and followshade-new-componentfor the acceptance checklist. - Import from layer-specific Shade subpaths, never the root barrel. Inside
Shade, use the
@/alias for cross-file imports. - Never overwrite an existing component when using the ShadCN CLI. Follow the
shade-shadcn-installskill. - Do not import
@tryghost/shade/styles.cssor add anotherShadeAppwrapper in an embedded Admin app; Admin owns the shared CSS and application wrapper. - Use semantic tokens rather than raw colours or colour
dark:variants, and use Shade primitives for layout-only wrappers. - Run
pnpm lintandpnpm test. Visually verify changed UI and stories in Storybook. - Update the Storybook human documentation when a shared Shade convention changes; do not make this file the only source.