Learn-skills.dev shell-ui
Shell module patterns for src/app/shell, covering global UI state, layout composition, navigation, theming with Material Design 3 tokens, and zone-less signal-first presentation boundaries; use when changing app chrome or global UI concerns.
install
source · Clone the upstream repo
git clone https://github.com/NeverSight/learn-skills.dev
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/NeverSight/learn-skills.dev "$T" && mkdir -p ~/.claude/skills && cp -r "$T/data/skills-md/7spade/black-tortoise/shell-ui" ~/.claude/skills/neversight-learn-skills-dev-shell-ui && rm -rf "$T"
manifest:
data/skills-md/7spade/black-tortoise/shell-ui/SKILL.mdsource content
Shell UI
Intent
Own global application chrome and cross-cutting UI state (navigation, theme, notifications) without leaking business logic.
Responsibilities
- Layout composition, global navigation, and app-level UI scaffolding.
- Global UI state stores (theme, toasts/snackbars, search UI state) when truly cross-cutting.
Boundaries
- Shell does not own capability business logic.
- Shell consumes application-facing signals; it does not call repositories directly.
UI Rules
- Standalone components only.
- Bind templates to signals only using Angular control flow.
- Use Material 3 tokens; avoid hardcoded CSS values for color/typography.
Navigation
- Prefer router-driven composition and lazy loading.
- Use functional guards/resolvers with
.inject()
Accessibility
- Ensure keyboard navigation, focus visibility, semantic landmarks, and skip links for global layout.