---
id: 08-core-ui-scaffold
epic: dsr-consent-and-cookie-banner
title: core-ui scaffold
type: technical-story
status: done
feature: core-ui
depends-on: []
blocks: [09-cookie-consent-banner]
created: 2026-05-19T12:00:00Z
updated: 2026-05-19T21:03:59.344Z
---

## Goal

Scaffold `@repo/core-ui` via the generator, producing a green package shell that Story 09 will populate with the `<CookieConsentBanner>` component.

## Why

The PRD notes that `core-ui`'s directory exists but is empty. Running the generator is the required first step before any component work can land — it wires the package into the Turborepo graph, establishes the package.json and tsconfig.json, and creates the Storybook entry point. Story 09 cannot land without a valid package shell.

## Done when

- `packages/core-ui/` is a valid Turborepo package with `package.json`, `tsconfig.json`, `vitest.config.ts`, and an empty `src/index.ts` barrel.
- The package appears in `pnpm turbo boundaries` output.
- `pnpm typecheck && pnpm lint && pnpm test && pnpm conformance && pnpm fallow:audit && pnpm coverage:diff` all pass.

## In scope

- `pnpm turbo gen core-package ui` invocation and any post-scaffold fixes required to make the shell green.

## Out of scope

- `<CookieConsentBanner>` component (Story 09).
- Any UI component other than the banner — this epic ships only what the PRD requires.

## Tasks

- [x] Run `pnpm turbo gen core-package ui` and apply any post-scaffold fixes needed to produce a green package shell (`pnpm typecheck && pnpm lint && pnpm test && pnpm conformance && pnpm fallow:audit && pnpm coverage:diff` pass).
