Skip to content

refactor: improve skill to follow skills best practices#1

Open
Jaylonnet wants to merge 1 commit intoLeonxlnx:mainfrom
Jaylonnet:improve-skill-best-practices
Open

refactor: improve skill to follow skills best practices#1
Jaylonnet wants to merge 1 commit intoLeonxlnx:mainfrom
Jaylonnet:improve-skill-best-practices

Conversation

@Jaylonnet
Copy link
Copy Markdown

@Jaylonnet Jaylonnet commented Feb 25, 2026

  • Restructured SKILL.md for better clarity and focus
  • Added references/ directory with modular documentation:
    • architecture.md
    • creative-arsenal.md
    • design-rules.md
    • dials.md
    • motion.md
    • performance.md
  • Simplified skill description for better discoverability

Summary by Sourcery

Restructure the frontend design skill documentation into a concise entrypoint with modular reference files for architecture, design rules, motion, performance, creative patterns, and control dials.

Documentation:

  • Introduce a streamlined SKILL.md entrypoint focused on baseline dials, critical rules, and a pre-flight checklist for frontend design work.
  • Add a references/ documentation set covering architecture conventions, design rules and anti-patterns, motion system and Bento paradigm, performance guardrails, creative UI patterns, and design dial definitions.

Summary by cubic

Refactored the frontend design skill into a concise SKILL.md entrypoint with modular reference docs to improve clarity, discoverability, and consistent best practices for React/Next.js UI work.

  • Refactors
    • Rewrote SKILL.md as a slim entrypoint with baseline dials, critical rules, quick links, and a pre‑flight checklist.
    • Added a references/ directory splitting deep guidance into architecture, design rules, motion, performance, creative patterns, and dial definitions.
    • Moved forbidden patterns, typography/color rules, and Bento motion guidance into dedicated files for easier maintenance.
    • Added grep-friendly search cues (e.g., CRITICAL, NO, spring, NEVER) to speed lookup.

Written for commit 45a1145. Summary will update on new commits.

Summary by CodeRabbit

Documentation

  • Updated and restructured design guidance documentation with a more concise, reference-driven format.
  • Added comprehensive reference materials covering architecture conventions, design patterns, design rules, motion specifications, performance guardrails, and configurable design system parameters.
  • Introduced a centralized design system framework with customizable values for visual variance, motion intensity, and density levels.

- Restructured SKILL.md for better clarity and focus
- Added references/ directory with modular documentation:
  - architecture.md
  - creative-arsenal.md
  - design-rules.md
  - dials.md
  - motion.md
  - performance.md
- Simplified skill description for better discoverability
@sourcery-ai
Copy link
Copy Markdown

sourcery-ai bot commented Feb 25, 2026

Reviewer's Guide

Refactors the frontend design skill into a concise entrypoint SKILL.md plus a modular references/ directory, separating architecture, motion, design rules, creative patterns, dials, and performance guardrails into focused reference documents while preserving the original guidance content.

File-Level Changes

Change Details Files
Simplified SKILL.md into a concise entrypoint that describes the skill, exposes active baseline dials, surfaces critical rules, and links to modular reference docs.
  • Replaced verbose narrative description with a shorter, usage-oriented description focused on React/Next.js UI work.
  • Collapsed the baseline configuration into a single inline code block with DESIGN_VARIANCE, MOTION_INTENSITY, and VISUAL_DENSITY.
  • Added a Quick Reference table that maps topics to reference files and example grep queries for fast lookup of critical rules.
  • Surfaced a small set of always-on critical rules (banned defaults, typography defaults, motion, performance) directly in SKILL.md.
  • Condensed the pre-flight checklist to the most important guardrails and kept it at the bottom of SKILL.md.
SKILL.md
Extracted motion- and animation-related guidance into a dedicated motion reference, including intensity levels and the motion-engine bento paradigm.
  • Created a Motion & Animation doc that covers liquid glass refraction, magnetic micro-physics, perpetual micro-interactions, layout transitions, and stagger orchestration.
  • Documented MOTION_INTENSITY tiers (1–3, 4–7, 8–10) with concrete CSS and Framer Motion usage rules.
  • Isolated the Motion-Engine Bento paradigm, including aesthetic, palette, typography, and padding conventions for cards.
  • Defined five canonical motion card archetypes (Intelligent List, Command Input, Live Status, Wide Data Stream, Contextual UI).
  • Clarified when to use GSAP/ThreeJS vs Framer Motion and forbade mixing them in the same component tree.
references/motion.md
Moved design engineering rules and anti-AI design tells into a focused design-rules reference.
  • Captured deterministic typography rules for headings and body text with Tailwind examples and font guidance.
  • Centralized color calibration constraints including the explicit ban on AI purple/blue aesthetics and oversaturated accents.
  • Documented layout diversification rules and constraints around centered heroes and asymmetric layouts.
  • Described materiality and anti-card overuse strategies, plus required interactive states (loading, empty, error, tactile feedback).
  • Consolidated the "100 AI tells" forbidden patterns into grouped NO- prefixed blocks for visuals, typography, layout, content, and external resources.
references/design-rules.md
Isolated the creative inspiration patterns into a standalone creative-arsenal reference organized by category.
  • Extracted hero, navigation/menu, layout/grid, card/container, scroll animation, gallery/media, typography, and micro-interaction patterns.
  • Reorganized patterns into markdown tables with pattern names and short descriptions for quick scanning.
  • Preserved all original advanced UI concepts (e.g., Bento grid, magnetic button, sticky scroll stack) while removing narrative duplication from SKILL.md.
references/creative-arsenal.md
Created a dials reference that formalizes DESIGN_VARIANCE, MOTION_INTENSITY, and VISUAL_DENSITY levels and behaviors.
  • Defined the active baseline dial values and documented that they can be overridden only via user prompts.
  • Described behavioral ranges for each dial tier with concrete layout, animation, and density implications.
  • Captured the mobile override requirement for high DESIGN_VARIANCE levels to enforce single-column layouts on small screens.
references/dials.md
Split out performance and architecture guidance into dedicated references with guardrails and checklists.
  • Documented DOM cost constraints, hardware-accelerated animation properties, and z-index discipline in a performance guide with its own pre-flight checklist.
  • Centralized architectural conventions: dependency verification, React/Next.js RSC vs client component rules, state management guidelines, and Tailwind v3/v4 constraints.
  • Captured anti-emoji policy, responsive layout/container rules, grid-over-flex guidance, icon library requirements, and form structure conventions.
references/performance.md
references/architecture.md

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

Copy link
Copy Markdown

@sourcery-ai sourcery-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey - I've found 1 issue, and left some high level feedback:

  • Rule 3 in references/design-rules.md still references LAYOUT_VARIANCE, but the only dial defined in references/dials.md is DESIGN_VARIANCE; align the naming so the dial referenced in rules is actually defined.
  • Motion intensity behavior is described in both references/motion.md and references/dials.md; consider reducing duplication or clearly separating responsibilities (e.g., dials = conceptual levels, motion = implementation patterns) to avoid the two drifting out of sync.
  • The pre-flight checklist now appears in both SKILL.md and references/performance.md; consider consolidating into a single canonical checklist and linking to it to keep the source of truth clear.
Prompt for AI Agents
Please address the comments from this code review:

## Overall Comments
- Rule 3 in `references/design-rules.md` still references `LAYOUT_VARIANCE`, but the only dial defined in `references/dials.md` is `DESIGN_VARIANCE`; align the naming so the dial referenced in rules is actually defined.
- Motion intensity behavior is described in both `references/motion.md` and `references/dials.md`; consider reducing duplication or clearly separating responsibilities (e.g., dials = conceptual levels, motion = implementation patterns) to avoid the two drifting out of sync.
- The pre-flight checklist now appears in both `SKILL.md` and `references/performance.md`; consider consolidating into a single canonical checklist and linking to it to keep the source of truth clear.

## Individual Comments

### Comment 1
<location path="references/performance.md" line_range="4" />
<code_context>
+# Performance Guardrails
+
+## DOM Cost
+Apply grain/noise filters exclusively to fixed, pointer-event-none pseudo-elements:
+```css
+fixed inset-0 z-50 pointer-events-none
</code_context>
<issue_to_address>
**nitpick (typo):** Fix minor typo in `pointer-event-none` to match the intended `pointer-events-none` class name.

In the descriptive text above, update `pointer-event-none` to `pointer-events-none` to match the class used in the CSS example.

```suggestion
Apply grain/noise filters exclusively to fixed, pointer-events-none pseudo-elements:
```
</issue_to_address>

Sourcery is free for open source - if you like our reviews please consider sharing them ✨
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.

# Performance Guardrails

## DOM Cost
Apply grain/noise filters exclusively to fixed, pointer-event-none pseudo-elements:
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nitpick (typo): Fix minor typo in pointer-event-none to match the intended pointer-events-none class name.

In the descriptive text above, update pointer-event-none to pointer-events-none to match the class used in the CSS example.

Suggested change
Apply grain/noise filters exclusively to fixed, pointer-event-none pseudo-elements:
Apply grain/noise filters exclusively to fixed, pointer-events-none pseudo-elements:

@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Feb 25, 2026

📝 Walkthrough

Walkthrough

Documentation restructured and expanded: SKILL.md condensed into a leaner specification, while six new reference files (architecture, creative arsenal, design rules, dials system, motion guidelines, and performance guardrails) provide comprehensive guidance on design patterns, system configuration, and technical constraints.

Changes

Cohort / File(s) Summary
Core Skill Specification
SKILL.md
Condensed from verbose multi-section template (~222 lines removed) to streamlined "Design Taste Frontend" stance with compact Quick Reference, Critical Rules, and simplified checklist; now references external definitions via references/dials.md.
Architecture & System Foundation
references/architecture.md, references/dials.md
New architecture guidelines covering dependency handling, frameworks, state management, styling, accessibility, and responsiveness; design system dials introduce three controllable dimensions (DESIGN_VARIANCE, MOTION_INTENSITY, VISUAL_DENSITY) with level-based presets and mobile override behavior.
Design Patterns & Rules
references/creative-arsenal.md, references/design-rules.md
Creative Arsenal catalogs UI patterns (hero, navigation, layout, cards, scroll-animations, galleries, typography, micro-interactions); Design Rules document specifies deterministic typography, color calibration, materiality guidelines, and enumerates 100+ forbidden anti-patterns across visuals, typography, layout, and content.
Motion & Performance Standards
references/motion.md, references/performance.md
Motion guidelines prescribe Framer Motion usage, perpetual micro-interactions tied to MOTION_INTENSITY levels, Bento dashboard paradigm, and strict GSAP/ThreeJS isolation; Performance Guardrails define DOM cost limits, hardware acceleration constraints, z-index restraint, and pre-flight validation checklist.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Poem

🐰✨ The skill grows slender yet the knowledge spreads wide,
Six new guides emerge where wisdom may reside,
Dials spin with motion, patterns dance in place,
A leaner spec leads us through design's graceful space! 🎨

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately describes the main change: restructuring SKILL.md and adding reference documentation to follow best practices, which is the primary intent of the PR.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
  • 📝 Generate docstrings (stacked PR)
  • 📝 Generate docstrings (commit on current branch)
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

1 issue found across 7 files

Prompt for AI agents (all issues)

Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.


<file name="references/performance.md">

<violation number="1" location="references/performance.md:4">
P3: Minor typo: `pointer-event-none` should be `pointer-events-none` to match the correct Tailwind CSS class name used in the code example below.</violation>
</file>

Since this is your first cubic review, here's how it works:

  • cubic automatically reviews your code and comments on bugs and improvements
  • Teach cubic by replying to its comments. cubic learns from your replies and gets better over time
  • Add one-off context when rerunning by tagging @cubic-dev-ai with guidance or docs links (including llms.txt)
  • Ask questions if you need clarification on any suggestion

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

# Performance Guardrails

## DOM Cost
Apply grain/noise filters exclusively to fixed, pointer-event-none pseudo-elements:
Copy link
Copy Markdown

@cubic-dev-ai cubic-dev-ai bot Feb 25, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P3: Minor typo: pointer-event-none should be pointer-events-none to match the correct Tailwind CSS class name used in the code example below.

Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At references/performance.md, line 4:

<comment>Minor typo: `pointer-event-none` should be `pointer-events-none` to match the correct Tailwind CSS class name used in the code example below.</comment>

<file context>
@@ -0,0 +1,37 @@
+# Performance Guardrails
+
+## DOM Cost
+Apply grain/noise filters exclusively to fixed, pointer-event-none pseudo-elements:
+```css
+fixed inset-0 z-50 pointer-events-none
</file context>
Fix with Cubic

Copy link
Copy Markdown

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 7

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@references/architecture.md`:
- Line 4: Update the phrase "Before importing ANY 3rd party library (e.g.
`framer-motion`, `lucide-react`, `zustand`), check `package.json`." to hyphenate
the compound modifier as "3rd-party" so it reads "Before importing ANY 3rd-party
library (e.g. `framer-motion`, `lucide-react`, `zustand`), check
`package.json`."—apply this change to the exact sentence beginning with "Before
importing ANY 3rd party library" in the document.
- Line 30: The guidance is incorrect: update the text to state to use exactly
the package names "@phosphor-icons/react" or "@radix-ui/react-icons", clarify
that "@radix-ui/react-icons" icons are primarily fill-based so "strokeWidth" has
little to no practical effect and should not be recommended, and for
"@phosphor-icons/react" replace any references to "strokeWidth" with the correct
prop "weight" and list accepted string values
("thin","light","regular","bold","fill","duotone"); ensure examples and any
global standardization guidance refer to "weight" for Phosphor and avoid
proposing a numeric "strokeWidth" for Radix.

In `@references/creative-arsenal.md`:
- Line 14: The table row string "Mac OS Dock Magnification" uses incorrect Apple
branding; update that label to "macOS Dock Magnification" (replace the literal
"Mac OS" with "macOS") wherever that exact string appears in the document so the
table header/cell reads "macOS Dock Magnification" and preserves the rest of the
row content unchanged.

In `@references/design-rules.md`:
- Around line 57-96: Update the five fenced code blocks in the "100 AI Tells"
section (e.g., the blocks starting with "NO Neon/Outer Glows:", "NO Inter
Font:", "NO Misaligned Elements:", "NO Generic Names:", and "NO Broken Unsplash
Links:") to include a language specifier by replacing the opening/closing triple
backticks with triple backticks plus "text" (i.e., change ``` to ```text for
each block) so the MD040 linter warning is resolved.

In `@references/performance.md`:
- Around line 5-7: The fenced code block currently uses the `css` language tag
but contains Tailwind utility classes ("fixed inset-0 z-50
pointer-events-none"); change the fence tag to `text` (or alternatively present
it as a JSX `className` snippet) so syntax highlighters treat it as plain
text/classes rather than CSS declarations—update the fenced block surrounding
"fixed inset-0 z-50 pointer-events-none" accordingly.

In `@SKILL.md`:
- Line 26: The grep pattern in the SKILL.md table uses BRE alternation with
backslash-escaped pipes ("grep "Grid\|Menu\|Card"
references/creative-arsenal.md"), which is not portable to macOS BSD grep;
update that entry to use extended regex mode (grep -E) and unescaped pipes
(Grid|Menu|Card) so the command works cross-platform and remains readable.
- Around line 12-14: The fenced code block containing "DESIGN_VARIANCE: 8 |
MOTION_INTENSITY: 6 | VISUAL_DENSITY: 4" in SKILL.md lacks a language specifier;
update the opening fence from ``` to ```text so the block becomes ```text ...
``` to satisfy MD040 and explicitly mark the content as plain text.

ℹ️ Review info

Configuration used: defaults

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 4bcdd2e and 45a1145.

📒 Files selected for processing (7)
  • SKILL.md
  • references/architecture.md
  • references/creative-arsenal.md
  • references/design-rules.md
  • references/dials.md
  • references/motion.md
  • references/performance.md

# Architecture & Conventions

## Dependency Verification [MANDATORY]
Before importing ANY 3rd party library (e.g. `framer-motion`, `lucide-react`, `zustand`), check `package.json`. If missing, output the installation command before providing code. **Never** assume a library exists.
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Minor grammar: hyphenate compound modifier "3rd-party"

✏️ Proposed fix
-Before importing ANY 3rd party library (e.g. `framer-motion`, `lucide-react`, `zustand`), check `package.json`.
+Before importing ANY 3rd-party library (e.g. `framer-motion`, `lucide-react`, `zustand`), check `package.json`.
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
Before importing ANY 3rd party library (e.g. `framer-motion`, `lucide-react`, `zustand`), check `package.json`. If missing, output the installation command before providing code. **Never** assume a library exists.
Before importing ANY 3rd-party library (e.g. `framer-motion`, `lucide-react`, `zustand`), check `package.json`. If missing, output the installation command before providing code. **Never** assume a library exists.
🧰 Tools
🪛 LanguageTool

[grammar] ~4-~4: Use a hyphen to join words.
Context: ...ion [MANDATORY] Before importing ANY 3rd party library (e.g. framer-motion, `lu...

(QB_NEW_EN_HYPHEN)

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@references/architecture.md` at line 4, Update the phrase "Before importing
ANY 3rd party library (e.g. `framer-motion`, `lucide-react`, `zustand`), check
`package.json`." to hyphenate the compound modifier as "3rd-party" so it reads
"Before importing ANY 3rd-party library (e.g. `framer-motion`, `lucide-react`,
`zustand`), check `package.json`."—apply this change to the exact sentence
beginning with "Before importing ANY 3rd party library" in the document.

- **Grid over Flex-Math:** NEVER use complex flexbox percentage math (`w-[calc(33%-1rem)]`). ALWAYS use CSS Grid (`grid grid-cols-1 md:grid-cols-3 gap-6`).

## Icons
Use exactly `@phosphor-icons/react` or `@radix-ui/react-icons`. Standardize `strokeWidth` globally (e.g., `1.5` or `2.0`).
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🏁 Script executed:

# First, locate and read the file to see current guidance at line 30
find . -name "architecture.md" -type f | head -5

Repository: Leonxlnx/taste-skill

Length of output: 92


🏁 Script executed:

# Once we find the file, let's read lines around line 30
git ls-files | grep -i architecture | head -10

Repository: Leonxlnx/taste-skill

Length of output: 90


🌐 Web query:

@radix-ui/react-icons strokeWidth prop support API

💡 Result:

@radix-ui/react-icons doesn’t have a special strokeWidth API, but it does accept strokeWidth because every icon’s props are typed as:

  • IconProps extends React.SVGAttributes<SVGElement> (plus an optional color) [1]

So this is valid TypeScript/React usage:

import { CheckIcon } from "@radix-ui/react-icons";

<CheckIcon strokeWidth={2} />;

Whether it visually changes anything depends on the specific icon SVG: many Radix icons are primarily fill-based, so strokeWidth may have no effect unless the icon uses strokes. [1]

Sources:
[1] https://app.unpkg.com/%40radix-ui/react-icons%401.3.0/files/dist/types.d.ts


🌐 Web query:

@phosphor-icons/react weight prop documentation

💡 Result:

In @phosphor-icons/react, the weight prop controls the icon “style/weight” variant, and accepts:

"thin" | "light" | "regular" | "bold" | "fill" | "duotone".[1][2]

Example:

import { HeartIcon } from "@phosphor-icons/react";

<HeartIcon weight="fill" size={32} color="#AE2983" />

You can also set a default weight for all icons via IconContext.Provider (value={{ weight: "bold" }}), which individual icons can override.[1][2]

Docs: GitHub README and npm package page.[1][2]


🏁 Script executed:

cat -n references/architecture.md | sed -n '25,35p'

Repository: Leonxlnx/taste-skill

Length of output: 766


Inaccurate strokeWidth guidance for both icon libraries

The current guidance recommending strokeWidth with numeric values is incorrect for both libraries:

  • @radix-ui/react-icons: While the component technically accepts strokeWidth as an SVG attribute, most Radix icons are fill-based and will not respond visually to stroke width changes. The prop has little to no practical effect.
  • @phosphor-icons/react: The correct prop is weight, not strokeWidth, accepting string values ("thin", "light", "regular", "bold", "fill", "duotone"), not numeric values like 1.5 or 2.0.

This guidance would produce non-functional code. Update to reflect the actual APIs:

✏️ Proposed fix
-Use exactly `@phosphor-icons/react` or `@radix-ui/react-icons`. Standardize `strokeWidth` globally (e.g., `1.5` or `2.0`).
+Use exactly `@phosphor-icons/react` or `@radix-ui/react-icons`.
+- For `@phosphor-icons/react`: standardize the `weight` prop globally (e.g., `weight="light"` or `weight="regular"`).
+- For `@radix-ui/react-icons`: stroke width is fixed in the SVG source; visual customization via props is not supported.
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
Use exactly `@phosphor-icons/react` or `@radix-ui/react-icons`. Standardize `strokeWidth` globally (e.g., `1.5` or `2.0`).
Use exactly `@phosphor-icons/react` or `@radix-ui/react-icons`.
- For `@phosphor-icons/react`: standardize the `weight` prop globally (e.g., `weight="light"` or `weight="regular"`).
- For `@radix-ui/react-icons`: stroke width is fixed in the SVG source; visual customization via props is not supported.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@references/architecture.md` at line 30, The guidance is incorrect: update the
text to state to use exactly the package names "@phosphor-icons/react" or
"@radix-ui/react-icons", clarify that "@radix-ui/react-icons" icons are
primarily fill-based so "strokeWidth" has little to no practical effect and
should not be recommended, and for "@phosphor-icons/react" replace any
references to "strokeWidth" with the correct prop "weight" and list accepted
string values ("thin","light","regular","bold","fill","duotone"); ensure
examples and any global standardization guidance refer to "weight" for Phosphor
and avoid proposing a numeric "strokeWidth" for Radix.


| Pattern | Description |
|---------|-------------|
| **Mac OS Dock Magnification** | Nav-bar at the edge; icons scale fluidly on hover |
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Correct Apple branding: "Mac OS" → "macOS"

✏️ Proposed fix
-| **Mac OS Dock Magnification** | Nav-bar at the edge; icons scale fluidly on hover |
+| **macOS Dock Magnification** | Nav-bar at the edge; icons scale fluidly on hover |
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
| **Mac OS Dock Magnification** | Nav-bar at the edge; icons scale fluidly on hover |
| **macOS Dock Magnification** | Nav-bar at the edge; icons scale fluidly on hover |
🧰 Tools
🪛 LanguageTool

[uncategorized] ~14-~14: The operating system from Apple is written “macOS”
Context: ...ription | |---------|-------------| | Mac OS Dock Magnification | Nav-bar at the e...

(MAC_OS)

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@references/creative-arsenal.md` at line 14, The table row string "Mac OS Dock
Magnification" uses incorrect Apple branding; update that label to "macOS Dock
Magnification" (replace the literal "Mac OS" with "macOS") wherever that exact
string appears in the document so the table header/cell reads "macOS Dock
Magnification" and preserves the rest of the row content unchanged.

Comment on lines +57 to +96
```
NO Neon/Outer Glows: Do not use default box-shadow glows or auto-glows. Use inner borders or subtle tinted shadows.
NO Pure Black: Never use #000000. Use Off-Black, Zinc-950, or Charcoal.
NO Oversaturated Accents: Desaturate accents to blend elegantly with neutrals.
NO Excessive Gradient Text: Do not use text-fill gradients for large headers.
NO Custom Mouse Cursors: They are outdated and ruin performance/accessibility.
```

## Typography

```
NO Inter Font: Banned. Use Geist, Outfit, Cabinet Grotesk, or Satoshi.
NO Oversized H1s: The first heading should not scream. Control hierarchy with weight and color, not just massive scale.
NO Serif on Dashboards: Use Serif fonts ONLY for creative/editorial designs.
```

## Layout & Spacing

```
NO Misaligned Elements: Ensure padding and margins are mathematically perfect.
NO Floating Elements: Avoid awkward gaps.
NO 3-Column Card Layouts: The generic "3 equal cards horizontally" feature row is BANNED. Use 2-column Zig-Zag, asymmetric grid, or horizontal scrolling.
```

## Content & Data (The "Jane Doe" Effect)

```
NO Generic Names: "John Doe", "Sarah Chan", "Jack Su" are banned. Use creative, realistic-sounding names.
NO Generic Avatars: DO NOT use standard SVG "egg" or Lucide user icons. Use creative, believable photo placeholders.
NO Fake Numbers: Avoid 99.99%, 50%, or 1234567. Use organic, messy data (47.2%, +1 (312) 847-1928).
NO Startup Slop Names: "Acme", "Nexus", "SmartFlow". Invent premium, contextual brand names.
NO Filler Words: Avoid "Elevate", "Seamless", "Unleash", "Next-Gen". Use concrete verbs.
```

## External Resources & Components

```
NO Broken Unsplash Links: Do not use Unsplash. Use https://picsum.photos/seed/{random_string}/800/600 or SVG UI Avatars.
NO Default shadcn/ui: You may use shadcn/ui, but NEVER in generic default state. Customize radii, colors, shadows.
```
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Add language specifiers to fenced code blocks (MD040)

All five rule-list code blocks in the "100 AI Tells" section use bare ``` without a language tag, triggering the MD040 linter warning. Use ```text since the content is plain-text rules.

✏️ Proposed fix (apply to all five blocks)
-```
 NO Neon/Outer Glows: ...
-```
+```text
 NO Neon/Outer Glows: ...
+```
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@references/design-rules.md` around lines 57 - 96, Update the five fenced code
blocks in the "100 AI Tells" section (e.g., the blocks starting with "NO
Neon/Outer Glows:", "NO Inter Font:", "NO Misaligned Elements:", "NO Generic
Names:", and "NO Broken Unsplash Links:") to include a language specifier by
replacing the opening/closing triple backticks with triple backticks plus "text"
(i.e., change ``` to ```text for each block) so the MD040 linter warning is
resolved.

Comment on lines +5 to +7
```css
fixed inset-0 z-50 pointer-events-none
```
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Misleading css language tag — content is a Tailwind class string, not CSS

The fenced block contains Tailwind utility class names, not CSS declarations. Syntax highlighters will misparse this as CSS. Use text (or wrap in a JSX className snippet for context).

✏️ Proposed fix
-```css
-fixed inset-0 z-50 pointer-events-none
-```
+```text
+fixed inset-0 z-50 pointer-events-none
+```
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
```css
fixed inset-0 z-50 pointer-events-none
```
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@references/performance.md` around lines 5 - 7, The fenced code block
currently uses the `css` language tag but contains Tailwind utility classes
("fixed inset-0 z-50 pointer-events-none"); change the fence tag to `text` (or
alternatively present it as a JSX `className` snippet) so syntax highlighters
treat it as plain text/classes rather than CSS declarations—update the fenced
block surrounding "fixed inset-0 z-50 pointer-events-none" accordingly.

Comment on lines +12 to +14
```
DESIGN_VARIANCE: 8 | MOTION_INTENSITY: 6 | VISUAL_DENSITY: 4
```
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Add language specifier to fenced code block (MD040)

✏️ Proposed fix
-```
+```text
 DESIGN_VARIANCE: 8 | MOTION_INTENSITY: 6 | VISUAL_DENSITY: 4
🧰 Tools
🪛 markdownlint-cli2 (0.21.0)

[warning] 12-12: Fenced code blocks should have a language specified

(MD040, fenced-code-language)

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@SKILL.md` around lines 12 - 14, The fenced code block containing
"DESIGN_VARIANCE: 8 | MOTION_INTENSITY: 6 | VISUAL_DENSITY: 4" in SKILL.md lacks
a language specifier; update the opening fence from ``` to ```text so the block
becomes ```text ... ``` to satisfy MD040 and explicitly mark the content as
plain text.

| Design Rules | `references/design-rules.md` | `grep "NO " references/design-rules.md` |
| Motion/Animation | `references/motion.md` | `grep "spring" references/motion.md` |
| Performance | `references/performance.md` | `grep "NEVER" references/performance.md` |
| Creative Arsenal | `references/creative-arsenal.md` | `grep "Grid\|Menu\|Card" references/creative-arsenal.md` |
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

\| BRE alternation is not portable to macOS BSD grep

grep "Grid\|Menu\|Card" works on GNU grep (Linux) but fails silently on macOS BSD grep. Use -E with unescaped | for cross-platform compatibility.

✏️ Proposed fix
-| Creative Arsenal | `references/creative-arsenal.md` | `grep "Grid\|Menu\|Card" references/creative-arsenal.md` |
+| Creative Arsenal | `references/creative-arsenal.md` | `grep -E "Grid|Menu|Card" references/creative-arsenal.md` |
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
| Creative Arsenal | `references/creative-arsenal.md` | `grep "Grid\|Menu\|Card" references/creative-arsenal.md` |
| Creative Arsenal | `references/creative-arsenal.md` | `grep -E "Grid|Menu|Card" references/creative-arsenal.md` |
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@SKILL.md` at line 26, The grep pattern in the SKILL.md table uses BRE
alternation with backslash-escaped pipes ("grep "Grid\|Menu\|Card"
references/creative-arsenal.md"), which is not portable to macOS BSD grep;
update that entry to use extended regex mode (grep -E) and unescaped pipes
(Grid|Menu|Card) so the command works cross-platform and remains readable.

NDilanka pushed a commit to NDilanka/taste-skill that referenced this pull request Mar 19, 2026
Follows Anthropic's Leonxlnx#1 skill development recommendation: evaluation-driven development.

- reference/EVALUATIONS.md: 8 test scenarios spanning all archetypes (Abstract Mark, Wordmark,
  Geometric Monogram, Pictorial Reduction, Combination Mark, Negative Space, Emblem, Revision Round)
  with expected archetype selection, quality signals, and common failure modes
- scripts/validate-svg.sh: automated validation checking banned elements, accessibility attributes,
  viewBox, coordinate precision, path closure, file size, shape count, unused defs, editor metadata
- SKILL.md step 9 now references the validation script

https://claude.ai/code/session_01TybV7LMWVrnzVqtUqwoUvM
@Leonxlnx Leonxlnx force-pushed the main branch 2 times, most recently from bba36d6 to 90d6ec7 Compare March 27, 2026 23:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant