Merged by github-maintain cron. Approved by @clark-cant and @jizc. Pre-existing pytest failure on main (ui-styling/shadcn test) is unrelated to PR scope.
5.4 KiB
CLAUDE.md
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
Project Overview
UI UX Pro Max is an AI-powered design intelligence toolkit providing searchable databases of UI styles, color palettes, font pairings, chart types, and UX guidelines. It works as a skill/workflow for AI coding assistants (Claude Code, Windsurf, Cursor, etc.).
Search Command
python3 src/ui-ux-pro-max/scripts/search.py "<query>" --domain <domain> [-n <max_results>]
Domain search:
product- Product type recommendations (SaaS, e-commerce, portfolio)style- UI styles (glassmorphism, minimalism, brutalism) + AI prompts and CSS keywordstypography- Font pairings with Google Fonts importscolor- Color palettes by product typelanding- Page structure and CTA strategieschart- Chart types and library recommendationsux- Best practices and anti-patternsicons- Icon recommendations with import code (Phosphor, Heroicons, Lucide)react- React/Next.js performance patternsweb- App interface guidelines (iOS/Android/React Native)google-fonts- Individual Google Fonts lookupgsap- GSAP animation skeletons by intensity tier (hover, scroll reveal, stagger, page transition, parallax, loading)
Design dials (optional, only with --design-system):
python3 src/ui-ux-pro-max/scripts/search.py "<query>" --design-system --variance <1-10> --motion <1-10> --density <1-10>
--variance biases style selection (centered/minimal → bold/asymmetric), --motion attaches a matching GSAP snippet from motion.csv, --density overrides the spacing-scale tokens (spacious → dense/dashboard). Any dial left unset behaves exactly as before.
Stack search:
python3 src/ui-ux-pro-max/scripts/search.py "<query>" --stack <stack>
Available stacks: html-tailwind (default), react, nextjs, astro, vue, nuxtjs, nuxt-ui, svelte, swiftui, react-native, flutter, shadcn, jetpack-compose, threejs, angular, laravel, javafx, wpf, winui, avalonia, uno, uwp
Architecture
src/ui-ux-pro-max/ # Source of Truth
├── data/ # Canonical CSV databases
│ ├── products.csv, styles.csv, colors.csv, typography.csv, ...
│ └── stacks/ # Stack-specific guidelines
├── scripts/
│ ├── search.py # CLI entry point
│ ├── core.py # BM25 + regex hybrid search engine
│ └── design_system.py # Design system generation
└── templates/
├── base/ # Base templates (skill-content.md, quick-reference.md)
└── platforms/ # Platform configs (claude.json, cursor.json, ...)
cli/ # CLI installer (ui-ux-pro-max-cli on npm)
├── src/
│ ├── commands/init.ts # Install command with template generation
│ └── utils/template.ts # Template rendering engine
├── scripts/sync-assets.mjs # Mirrors src/ -> cli/assets/ AND src/ -> .claude/skills/ui-ux-pro-max/
└── assets/ # Bundled assets (~564KB)
├── data/ # Copy of src/ui-ux-pro-max/data/
├── scripts/ # Copy of src/ui-ux-pro-max/scripts/
└── templates/ # Copy of src/ui-ux-pro-max/templates/
.claude/skills/ui-ux-pro-max/ # Claude Code skill: hand-authored SKILL.md +
# data/, scripts/ mirrored from src/ (see Sync Rules)
.claude-plugin/ # Claude Marketplace publishing
The search engine uses BM25 ranking combined with regex matching. Domain auto-detection is available when --domain is omitted.
Sync Rules
Source of Truth: src/ui-ux-pro-max/
There are no symlinks in this repo (git-on-Windows checks them out as plain
text files pointing at a path, which silently breaks the skill) -- every
mirrored copy below is a real, independently-committed file kept in sync by
cli/scripts/sync-assets.mjs, enforced by the "Check asset sync" CI workflow.
When modifying files:
-
Data & Scripts - Edit in
src/ui-ux-pro-max/:data/*.csvanddata/stacks/*.csvscripts/*.py- Then run the sync below -- changes are NOT automatically reflected anywhere else.
-
Templates - Edit in
src/ui-ux-pro-max/templates/:base/skill-content.md- Common SKILL.md contentbase/quick-reference.md- Quick reference section (Claude only)platforms/*.json- Platform-specific configs
-
Sync before publishing / committing data or script changes:
cd cli npm run sync:assets # mirrors src/ -> cli/assets/ AND src/ -> .claude/skills/ui-ux-pro-max/{data,scripts} npm run check:assets # verify, no npm install required.claude/skills/ui-ux-pro-max/SKILL.mditself is hand-authored, not mirrored or template-generated -- edit it directly. -
Reference Folders - No manual sync needed. The CLI generates these from templates during
uipro init.
Prerequisites
Python 3.x (no external dependencies required)
Note: On Windows, use python instead of python3 to run the scripts.
Git Workflow
Never push directly to main. Always:
- Create a new branch:
git checkout -b feat/...orfix/... - Commit changes
- Push branch:
git push -u origin <branch> - Create PR:
gh pr create