What problem does it solve?
This Skill solves the problem of integrating a custom Angular Material M3 look consistently across OWASP Juice Shop without breaking UI tokens or legacy server-rendered pages.
Core Features & Use Cases
- SCSS-driven M3 theme definition: Add a new M3 theme configuration in
frontend/src/styles/theme.scss, then wire it into frontend/src/styles.scss to apply Material system tokens and CSS variables.
- Theme-overrides integration for standard palettes: Use
theme-overrides to map M3 tokens (primary, tertiary, surfaces, text) to Juice Shop’s expected variables for consistent styling.
- Legacy SSR/compatibility color mapping: Register an equivalent entry in
views/themes/themes.ts so server-side rendered pages and legacy UI elements match the new theme’s primary/surface intent.
- Use case: When branding a deployment for a security workshop, you can create a new theme name, update the config schema and defaults, and ensure both the Angular UI and legacy/SSR pages use the same color system.
Quick Start
Ask the AI to generate the exact file edits needed to add a new M3 theme named mytheme to OWASP Juice Shop, including SCSS theme config, config schema/default updates, and the legacy themes.ts entry.