26 Commits

Author SHA1 Message Date
Munir Abbasi
8a81ed6027
Merge PR #223: Expand products database with 31 new product types and improved keywords
* Add revised products.csv

* add 31 new color profiles
2026-06-28 09:27:07 +07:00
Jan Ivar Z. Carlsen
090a405cc0 feat(stacks): add 5 .NET desktop stacks — WPF, WinUI 3, UWP, Avalonia, Uno Platform
Adds WPF, WinUI 3, UWP, Avalonia, and Uno Platform stacks (17 -> 22 total),
each with its own guidelines CSV, registered in core.py and synced to cli/assets.

- New stack CSVs in src/ and cli/assets/data/stacks/
- search.py / core.py registry updated
- smoke-stacks.sh: EXPECTED_STACK_COUNT 21 -> 22 with a smoke-test workflow
- platform template descriptions and README bumped to 22 technology stacks
2026-06-25 21:51:59 +02:00
Alexander
d86f44368d
fix(scripts): force UTF-8 stdout/stderr in design_system.py on Windows (#390)
design_system.py prints box-drawing characters and swatches (--, OK marks,
block swatches), but unlike search.py it never reconfigured stdout. On a
non-UTF-8 Windows console (cp1252/gbk) running the CLI crashes with
UnicodeEncodeError, the same failure reported in #112 for search.py.

Mirror the wrapper search.py already uses: re-wrap stdout/stderr in a
UTF-8 TextIOWrapper when the console encoding is not UTF-8. Applied to
the source of truth and the synced cli/assets copy.

Verified: the CLI runs clean under PYTHONIOENCODING=cp1252 (exit 0, no
UnicodeEncodeError) while still emitting the box/swatch output;
check:assets passes.

Related to #112 (search.py is already fixed on main; this covers the
remaining design_system.py instance).
2026-06-25 18:30:49 +07:00
Alexander
3a12b63bd8
fix(scripts): guard persist_design_system against None project_name (#388)
persist_design_system crashed with AttributeError: 'NoneType' object has
no attribute 'lower' when the design_system dict carries an explicit
project_name of None (the default of generate(query, project_name=None)).
dict.get("project_name", "default") only substitutes the default for a
MISSING key, not a present-but-None value, so project_name.lower() blew
up.

Coalesce falsy values (None/""/missing) to "default" before slugifying.
Applied to both the source of truth and the bundled cli/assets copy.

The "search blindness" half of #159 (core.py tokenize length filter) is
already resolved on main (`len(w) >= 2`), so this targets the remaining
crash only.

Closes #159

Co-authored-by: YangKuoshih <155388493+YangKuoshih@users.noreply.github.com>
2026-06-25 15:43:33 +07:00
youngledo
53d670cd30
feat: add JavaFX enterprise stack guidance (#316) 2026-06-22 12:00:21 +07:00
Ray Tien
fb1fc58bf9
feat(nuxt-ui): update stack data to v4 (#345)
Breaking changes fixed:
- Row 8/9: icon format corrected from 'lucide:home' (v3) to 'i-lucide-home' (v4 Iconify i-prefix)
- Row 18: useOverlay API updated from .open(Component, {props}) to .create(Component).open({props})

New v4 guidelines added (rows 51-70):
- Auto-registered modules: do not re-add @nuxt/icon @nuxt/fonts @nuxtjs/color-mode
- Official nuxi init templates for project bootstrapping
- Local Iconify JSON install for SSR reliability
- Global icon overrides via appConfig.ui.icons
- New form components: UFileUpload, UInputDate, UInputTags, UColorPicker
- New data components: UTree, UMarquee
- UContextMenu for right-click menus
- Awaiting overlay result Promise for confirmation dialogs
- UCommandPalette grouped items and extractShortcuts
- UHeader/UFooter/UPageAside layout components
- ClientOnly pattern for color mode hydration safety
- Generated theme file (.nuxt/ui/) for slot discovery
- defineShortcuts whenever condition guard
- UApp locale prop for i18n (50+ built-in locales)

Sync cli/assets to match src.
2026-06-22 03:58:29 +07:00
Antony Omeri
10d6ca3105
Fix 3 latent bugs in ui-ux-pro-max (css2 font URLs, 2-char search, persist path) (#321)
All three are in the canonical src/ tree, reproduced on Python 3.14.5:

1. data/typography.csv — all 73 'Google Fonts URL' values were unusable
   fonts.google.com/share *UI* links, not stylesheet hrefs. Replaced with the
   proper fonts.googleapis.com/css2 URLs (extracted verbatim from each row's
   correct 'CSS Import' column), so the URL column is actually loadable.

2. scripts/core.py — BM25 tokenizer kept only words >2 chars, so common design
   terms 'ux', 'ui', 'ai', '3d' tokenized to nothing and returned 0 results
   (e.g. `--domain style "3d"`). Changed >2 to >=2; '3d'/'ai' now match.

3. scripts/search.py — `--persist` without `-p` printed
   'design-system/default/' but actually wrote to the query slug
   (e.g. design-system/fintech-crypto/). Use the same default the writer uses
   so the printed path matches reality.

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-21 22:40:01 +07:00
Runxin Yan
7538cfb360
docs: add Windows Python compatibility note (#280)
Add cross-platform Python command note to skills and docs:
- CLAUDE.md: Add Windows note in Prerequisites
- ui-ux-pro-max/SKILL.md: Add Windows note in Prerequisites
- design/SKILL.md: Add Prerequisites section with Windows note
- banner-design/SKILL.md: Add Prerequisites section with Windows note
- templates/base/skill-content.md: Add Windows note (source template)

Windows uses 'python' instead of 'python3' to run scripts.

Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-21 20:02:56 +07:00
Duy /zuey/
b7e3af80f6
Merge pull request #184 from Jenser77/feat/design-system-visual-improvements
Improve design system output visuals
2026-04-03 12:08:19 +07:00
Duy Nguyen
01944c4d77 merge: resolve conflicts with main branch
- Merged STACK_CONFIG: kept main's full stack list + added angular & laravel from PR
- Updated platform templates: 161 palettes, 16 stacks across all descriptions
- Listed all 16 stacks in claude.json frontmatter description
2026-03-28 12:39:21 +07:00
Duy /zuey/
49c9fbe61f
Merge pull request #205 from Krishna-Modi12/feat/threejs-stack
feat(stacks): add Three.js r128 stack with 53 guidelines and SKILL.md…
2026-03-28 12:33:28 +07:00
Krishna-hehe
ddef277aef feat(threejs): complete Three.js stack integration
- Add threejs.csv to src/data/stacks/ and cli/assets/data/stacks/
- Register all 14 stacks in STACK_CONFIG (was missing 9: react, nextjs,
  vue, svelte, astro, swiftui, nuxtjs, nuxt-ui, html-tailwind)
- Sync missing 9 stack CSVs from cli/assets to src/data/stacks/
- Update search.py docstring to list all 14 supported stacks
- Update all 15 platform templates: 13 stacks -> 14 stacks, add Three.js
- Remove empty threejs/ placeholder under templates/platforms/

Smoke test: 14/14 stack files resolve, threejs search returns 3 results
2026-03-27 19:40:23 +05:30
Krishna-hehe
acc9c74d31 fix(core): correct threejs STACK_CONFIG format and add missing stacks from main 2026-03-27 19:14:59 +05:30
Goon
035df47a56 fix: address Claude review findings
- Warn when --global and --legacy are used together (init.ts)
- Update metadata across all platform templates (161 palettes, 15 stacks)
- Bump skill.json version from 2.0.0 to 2.5.0
- Re-throw non-ENOENT errors in uninstall.ts removeSkillDir
- Hoist detectAIType call to avoid double invocation in uninstall
- Add clarifying comment for .shared in AI_FOLDERS mapping
2026-03-24 17:43:13 +07:00
Goon
2910a74e57 feat: resolve 8 enhancement issues — Angular, Laravel, KiloCode, global install, uninstall, Warp, Augment, add-skill
- Add Angular stack guidelines (50 rows) with signals, standalone components, defer blocks (#203)
- Add Laravel stack guidelines (50 rows) with Blade, Livewire, Inertia.js (#105)
- Add KiloCode platform support (.kilocode/skills/) as Roo Code fork (#89)
- Add global install mode: `uipro init --global` installs to ~/ (#75)
- Add uninstall command: `uipro uninstall` with auto-detect (#185)
- Add Warp platform support (#88)
- Add Augment platform support (#41)
- Add skill.json manifest for add-skill registry (#95)
- Update README with new platforms, stacks, CLI commands
2026-03-24 17:22:51 +07:00
Goon
c2bb930ef3 fix(templates): add YAML frontmatter to 5 platform configs
Add required name and description frontmatter to windsurf, kiro,
cursor, copilot, and roocode platform templates. Update agent.json
frontmatter with current capability counts.

Closes #204, #188, #43
2026-03-24 17:13:13 +07:00
Jens
e3102cb7ed Improve design system output with Unicode borders, ANSI color swatches, extended palette, and dark/light mode
Upgrade the design system terminal output from basic ASCII to Unicode box-drawing characters,
add ANSI true color swatches with graceful fallback, expand the color palette from 5 to 10
colors (Primary, On Primary, Secondary, Accent, Background, Foreground, Muted, Border,
Destructive, Ring) with CSS variable names, and surface Light/Dark mode support from styles.csv.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-15 11:08:47 +01:00
Goon
3636ea63e5
Merge branch 'main' into main 2026-03-10 12:19:06 +07:00
Goon
56a1e8f3d3 feat: add Google Fonts Collection with 1923 fonts searchable database
- Add google-fonts.csv with full metadata from Google Fonts API (family,
  category, stroke, classifications, styles, variable axes, subsets,
  designers, popularity, trending, Google Fonts URL)
- Generate searchable keywords per font based on category, stroke,
  classifications, weight count, variable axes, and language subsets
- Add google-fonts domain to CSV_CONFIG and detect_domain() in core.py
- Fix detect_domain() substring matching to use word boundaries (re.search)
  preventing false positives like "toolbar" matching "bar" chart domain
- Update SKILL.md with google-fonts domain docs and description
2026-03-10 11:28:27 +07:00
rianadesigner
5cbdb0ac30 chore: update ui-ux pro max skill for react-native apps
Made-with: Cursor
2026-03-10 11:56:27 +08:00
rianadesigner
2aec7afb93 sync: 161 product types, design system 与 CLI 资产同步,小猫咪预览页
- products.csv: 修复 No.90/No.65 数据,统一 161 产品类型
- colors.csv: 修复 Bitcoin DeFi Mobile 截断,同步 178 色板
- ui-reasoning.csv: 与 products 对齐
- core.py: 扩展 product 域关键词覆盖
- README/SKILL: 更新 161 reasoning rules、178 palettes 等数字
- 移除 stacks 下多框架 CSV,保留 react-native
- 新增 design.csv、_sync_all.py,CLI assets 全量同步
- 新增 preview/xiaomaomi-app.html 小猫咪 App 示例

Made-with: Cursor
2026-03-06 11:03:28 +08:00
sappan
2127b8b9b0 feat: add Droid (Factory) support
Add support for Factory's Droid AI assistant, allowing users to install
the skill via 'uipro init --ai droid' to .factory/skills/ directory.

Changes:
- Add droid.json platform config (src and cli/assets)
- Add 'droid' to AIType and AI_TYPES array
- Add .factory directory detection
- Add droid to AI_TO_PLATFORM mapping

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
2026-02-03 11:54:43 +08:00
Viet Tran
402c49a283 fix: Windows Unicode encoding error for emoji characters
Force UTF-8 encoding for stdout/stderr in search.py to handle
emoji characters (, ✓) on Windows systems that default to cp1252.

Fixes UnicodeEncodeError: 'charmap' codec can't encode character

- Bump CLI version to 2.2.3

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 21:25:32 +07:00
Viet Tran
28fb9373bd fix: self-contained installation for all platforms
- Remove .shared folder dependency - all platforms now self-contained
- Each platform installation includes its own data/ and scripts/
- Update platform configs: reference → full install type
- Simplify template.ts: remove ensureSharedExists logic
- Update Cursor to Skill Mode (auto-activate)
- Update README to reflect Cursor in Skill Mode
- Bump CLI version to 2.2.2

Fixes issue where users couldn't find search.py in shared folder.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 21:23:33 +07:00
Viet Tran
b54b73715a
docs: update README, fix counts, change Windsurf to skill mode (#129)
- Remove Manual Installation section from README
- Add 67 styles table with # | Style | Best For format
- Update Supported Stacks table with all 13 stacks
- Simplify Usage section: group by Skill mode vs Workflow mode
- Fix counts: 57 font pairings (was 56), 99 UX guidelines (was 98)
- Change Windsurf from Workflow to Skill mode
- Update CLAUDE.md: remove prompt domain, add missing stacks
- Bump CLI version to 2.2.1

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-26 08:41:37 +07:00
Viet Tran
b2a05eceeb
feat: reorganize codebase with single source of truth + merge prompts into styles (#116)
BREAKING CHANGES:
- Moved canonical data/scripts to src/ui-ux-pro-max/
- Removed duplicate folders (.codex/, .gemini/, .trae/, .codebuddy/, .continue/, skills/, .qoder/)
- CLI now uses template system instead of copying pre-built folders

New features:
- Merged prompts.csv into styles.csv with 4 new columns:
  - AI Prompt Keywords
  - CSS/Technical Keywords
  - Implementation Checklist
  - Design System Variables
- All 67 styles now have complete prompt data
- Added Astro stack (53 guidelines)
- Added 10 new 2025 UI trend styles

CLI changes:
- New template rendering system (cli/src/utils/template.ts)
- Reduced cli/assets from ~34MB to ~564KB
- Assets now contain only: data/, scripts/, templates/

File structure:
- src/ui-ux-pro-max/ - Single source of truth
- .claude/skills/ - Symlinks to src/ for development
- .shared/ - Symlink to src/ui-ux-pro-max/

Bumped CLI version: 2.1.3 → 2.2.0

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-22 22:05:41 +07:00