fluxwing-library-browser
npx skills add https://github.com/jackspace/claudeskillz --skill Fluxwing Library Browser
Skill 文档
Fluxwing Library Browser
Browse all available uxscii components: bundled templates, user-created components, and complete screens.
Data Location Rules
READ from (bundled templates – reference only):
{SKILL_ROOT}/../uxscii-component-creator/templates/– 11 component templates{SKILL_ROOT}/../uxscii-screen-scaffolder/templates/– 2 screen examples (if available){SKILL_ROOT}/docs/– Documentation
READ from (project workspace):
./fluxwing/components/– Your created components./fluxwing/screens/– Your created screens./fluxwing/library/– Customized template copies
NEVER write to skill directories – they are read-only!
Your Task
Show the user what uxscii components are available across four sources:
- Bundled Templates – 11 curated examples from skill templates (read-only reference)
- Project Components – User/agent-created reusable components in
./fluxwing/components/(editable) - Project Library – Customized template copies in
./fluxwing/library/(editable) - Project Screens – Complete screen compositions in
./fluxwing/screens/(editable)
Key Distinction: Bundled templates are READ-ONLY reference materials. To customize them, copy to your project workspace first.
Fast Browsing with Pre-Built Index
IMPORTANT: Use the pre-built template index for instant browsing (10x faster than globbing):
// Load the pre-built index (1 file read = instant results!)
const index = JSON.parse(read('{SKILL_ROOT}/data/template-index.json'));
// Browse by type
const buttons = index.by_type.button; // ["primary-button", "secondary-button"]
const inputs = index.by_type.input; // ["email-input"]
// Search by tag
const formComponents = index.by_tag.form; // All form-related components
const interactiveComponents = index.by_tag.interactive; // All interactive components
// Get component info instantly (no file reads needed!)
const buttonInfo = index.bundled_templates.find(t => t.id === "primary-button");
console.log(buttonInfo.name); // "Primary Button"
console.log(buttonInfo.description); // Full description
console.log(buttonInfo.preview); // ASCII preview already extracted!
console.log(buttonInfo.states); // ["default", "hover", "active", "disabled"]
console.log(buttonInfo.props); // ["text", "variant", "size"]
console.log(buttonInfo.tags); // ["button", "primary", "action", "interactive"]
Performance Benefits:
- â 1 file read vs 11+ file reads (10x faster!)
- â Instant type/tag filtering (no parsing needed)
- â Pre-extracted ASCII previews (show immediately)
- â Metadata summary (no JSON parsing per component)
Index Structure:
{
"version": "1.0.0",
"generated": "2025-10-18T12:00:00Z",
"template_count": 11,
"bundled_templates": [ /* array of component metadata */ ],
"by_type": { /* components grouped by type */ },
"by_tag": { /* components grouped by tags */ }
}
When to use full file reads:
- User requests detailed view of a specific component
- User wants to copy a template (need full .uxm and .md content)
- User searches for a very specific property not in the index
Display Format
Present in a clear, hierarchical structure:
ð BUNDLED TEMPLATES
ð Component Creator Templates
âââââââââââââââââââââââââââââââââââââââââââââââââââââ
These are starter templates you can copy and customize.
Buttons (2 variants)
ââ primary-button.uxm
â ââ Standard clickable button with hover, focus, and disabled states
â ââââââââââââ
â â Click Me â
â ââââââââââââ
â
ââ icon-button.uxm
ââ Button with icon support for visual emphasis
[ð Search]
Inputs (2 variants)
ââ text-input.uxm
â ââ Basic text input with validation states
â [________________]
â
ââ email-input.uxm
ââ Email-specific input with format validation
[user@example.com ]
Cards (1 variant)
ââ card.uxm
ââ Container for grouping related content
âââââââââââââââ®
â Card Title â
âââââââââââââââ¤
â Content... â
â°ââââââââââââââ¯
Modals (1 variant)
ââ modal.uxm
ââ Overlay dialog for focused interactions
âââââââââââââââââ
â Modal Title â
â ââââââââââââââââ£
â Content... â
âââââââââââââââââ
Navigation (1 variant)
ââ navigation.uxm
ââ Primary navigation menu
⢠Home ⢠About ⢠Contact
Feedback (2 variants)
ââ alert.uxm
â ââ User notification with severity levels
â â ï¸ Warning: Action required
â
ââ badge.uxm
ââ Small status indicator or label
â New
Lists (1 variant)
ââ list.uxm
ââ Vertical list for displaying data
⢠Item 1
⢠Item 2
⢠Item 3
âââââââââââââââââââââââââââââââââââââââââââââââââââââ
ð¨ YOUR COMPONENTS
ð ./fluxwing/components/
âââââââââââââââââââââââââââââââââââââââââââââââââââââ
Components you've created for your project.
â submit-button.uxm
ââ Custom submit button for forms
Modified: 2024-10-11 14:23:00
[ Submit Form ]
â password-input.uxm
ââ Password input with show/hide toggle
Modified: 2024-10-11 14:25:00
[â¢â¢â¢â¢â¢â¢â¢â¢] ðï¸
â user-card.uxm
ââ Card displaying user profile information
Modified: 2024-10-11 15:10:00
ââââââââââââââââââââ®
â John Doe â
â @johndoe â
â°âââââââââââââââââââ¯
âââââââââââââââââââââââââââââââââââââââââââââââââââââ
ð¥ï¸ YOUR SCREENS
ð ./fluxwing/screens/
âââââââââââââââââââââââââââââââââââââââââââââââââââââ
Complete screen compositions.
â login-screen.uxm
ââ User authentication screen
Components used: email-input, password-input, submit-button, error-alert
Modified: 2024-10-11 15:45:00
â dashboard.uxm
ââ Main application dashboard
Components used: navigation, metric-card, data-table, sidebar
Modified: 2024-10-11 16:20:00
âââââââââââââââââââââââââââââââââââââââââââââââââââââ
Total: 10 templates, 3 components, 2 screens
Interactive Options
After displaying the library, offer these actions:
What would you like to do?
1ï¸â£ View component details (ask me to "show me [name]")
2ï¸â£ Copy a template to your project
3ï¸â£ Create a new component (ask me to "create a [type]")
4ï¸â£ Scaffold a new screen (ask me to "build a [screen type] screen")
5ï¸â£ Search for a specific pattern (e.g., "button", "input", "card")
Detailed View
If user wants to see details of a specific component:
User: Show me primary-button
You: ð PRIMARY-BUTTON.UXM
âââââââââââââââââââââââââââââââââââââââââââââââââââââ
ID: primary-button
Type: button
Version: 1.0.0
Description: Standard clickable button with hover, focus, and disabled states
Props:
- text: "Click me"
- variant: "primary"
- disabled: false
States:
- default (solid border, white background)
- hover (highlighted background)
- focus (outline indicator)
- disabled (grayed out)
Accessibility:
- Role: button
- Focusable: true
- Keyboard: Space, Enter
ASCII Preview:
Default State:
ââââââââââââ
â Click Me â
ââââââââââââ
Hover State:
âââââââââââââ
â Click Me â
âââââââââââââ
Location: {SKILL_ROOT}/../uxscii-component-creator/templates/primary-button.uxm
To customize: Copy to ./fluxwing/library/ for editing
Copy Template to Project
If user wants to customize a bundled template:
User: Copy primary-button to my project
You: I'll copy primary-button to your library for customization.
[Copies .uxm and .md files]
â Copied to ./fluxwing/library/
- primary-button.uxm
- primary-button.md
You can now edit these files safely. Changes won't affect the original template.
Next steps:
- Edit: Modify ./fluxwing/library/primary-button.uxm
- Expand: Ask me to "add hover state to primary-button"
- Use: Reference it in screens or other components
Search Functionality
Support component search:
User: Find all button components
You: Found 3 button components:
ð Bundled Templates:
- primary-button.uxm (standard clickable button)
- icon-button.uxm (button with icon support)
ð¨ Your Components:
- submit-button.uxm (custom submit button for forms)
Would you like details on any of these?
Empty Library Handling
If user has no components yet:
ð BUNDLED TEMPLATES
ð Component Creator Templates
âââââââââââââââââââââââââââââââââââââââââââââââââââââ
11 starter templates available
ð¨ YOUR COMPONENTS
ð ./fluxwing/components/
âââââââââââââââââââââââââââââââââââââââââââââââââââââ
No components yet. Create your first component!
Try: "Create a submit button" or "Create an email input"
ð¥ï¸ YOUR SCREENS
ð ./fluxwing/screens/
âââââââââââââââââââââââââââââââââââââââââââââââââââââ
No screens yet. Scaffold your first screen!
Try: "Build a login screen" or "Create a dashboard"
âââââââââââââââââââââââââââââââââââââââââââââââââââââ
Total: 11 templates, 0 components, 0 screens
Resources
- Examples Guide: See
{SKILL_ROOT}/docs/07-examples-guide.mdfor detailed template documentation - Component Creator: Use when you want to create new components
- Screen Scaffolder: Use when you want to build complete screens
- Component Viewer: Use for detailed component information
Important Notes
- Read-only templates: Bundled templates cannot be modified directly
- Copy before customize: Copy templates to
./fluxwing/library/to customize - Search: Use Glob and Grep to find components by name or pattern
- Organization: Keep components in
./fluxwing/components/, customized templates in./fluxwing/library/ - Screens: Screen files include
.uxm,.md, and.rendered.md(three files)
You’re helping users discover and navigate their uxscii component library!