
setup
Gather and persist audience, brand, UX goals, React framework, Tailwind setup, and component defaults for future design work. Use when the user asks to establish or update reusable project design guidance. A request to build UI can proceed with existing context without running setup.
- Installs
- 61
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/aladicf/better-react-web-ui --skill setup- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads setup automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
Gather design context for this project, then persist it for all future sessions.
setup writes to .better-react-web-ui.md as the canonical destination. Older files such as .better-web-ui.md, .better-ui.md, and .impeccable.md are legacy migration inputs only, not the place new work should keep using.
Follow project context to resolve the owning application and inherited defaults before writing. Existing DESIGN.md files remain design-system inputs. Link to their tokens instead of copying them into a competing inventory.
Consult design principles when turning product values, tone, and repeated tradeoffs into durable design principles that later work can reuse without reopening the same debates. Consult ux strategy when the project needs a clearer strategic frame for target outcomes, user focus, priorities, feasibility, or major risks.
Step 1: Explore the Codebase
Follow the Context Gathering Protocol. Reuse explicit instructions, documented audience and brand context, and prior answers. Inspect the relevant project files before asking about gaps:
- README and docs: Project purpose, target audience, any stated goals
- Package.json / config files: React framework, dependencies, existing design libraries
- shadcn project config:
components.json, shadcn schema usage, CLI-generated configuration, preset clues, Radix vs Base UI choice - Styling system: Tailwind version, Tailwind config, theme variables, utility conventions, and tokens
- Component libraries: shadcn/ui, ReUI, shadcncraft, Kibo UI, Basecn, Tailark, shadcnblocks, React Bits, Animate UI, Animata, Magic UI, Motion Primitives, Efferd, Billing SDK, blocks.so, coss/ui, Better Auth UI, Smooth UI, TripleD UI, shadcn-map, mapcn, c15t, PatternCraft, custom React UI packages, in-house systems
- Form architecture: TanStack Form, React Hook Form, Formik, custom React validation/state wiring
- Table / data-grid architecture: TanStack Table, AG Grid, framework-native tables, custom table state wiring
- Long-list / virtualization architecture: TanStack Virtual, react-window, react-virtualized, framework-native virtualization, custom windowing logic
- Existing components: Current design patterns, spacing, typography in use
- Brand assets: Logos, favicons, color values already defined
- Tailwind theme tokens / variables: Existing color palettes, font stacks, spacing scales
- Any style guides or brand documentation
Note what you've learned and what remains unclear.
Step 2: Ask UX-Focused Questions
Ask only about consequential gaps. The questions below are prompts to select from, not a mandatory questionnaire. If the user delegates creative decisions, record your assumptions and proceed. Do not invent user quotations:
Users & Purpose
- Who uses this? What's their context when using it?
- Is this aimed at a specific age range, life stage, or audience segment whose habits or needs should shape the UX?
- Is there a secondary audience or gatekeeper we also need to satisfy, such as parents, teachers, admins, or caregivers?
- What job are they trying to get done?
- What emotions should the interface evoke? (confidence, delight, calm, urgency, etc.)
Brand & Personality
- How would you describe the brand personality in 3 words?
- Any reference sites or apps that capture the right feel? What specifically about them?
- What should this explicitly NOT look like? Any anti-references?
- Should the interface feel more serious, playful, elegant, utilitarian, editorial, or something else?
- Should the language be formal, neutral, or conversational?
Aesthetic Preferences
- Any strong preferences for visual direction? (minimal, bold, elegant, playful, technical, organic, etc.)
- Light mode, dark mode, or both?
- Any colors that must be used or avoided?
- Should corners feel mostly square, gently rounded, or soft and playful?
- Should the palette lean warm, cool, or neutral?
Accessibility & Inclusion
- Specific accessibility requirements? (WCAG level, known user needs)
- Considerations for reduced motion, color blindness, or other accommodations?
Skip questions where the answer is already clear from the codebase exploration.
Implementation Defaults
- What React framework / runtime should future UI work assume by default?
- If this is a brand-new project, does the user want a specific Tailwind setup?
- If this is a brand-new project, does the user want shadcn/ui, ReUI, shadcncraft, Kibo UI, Basecn, Tailark, shadcnblocks, React Bits, Animate UI, Animata, Magic UI, Motion Primitives, Efferd, Billing SDK, blocks.so, coss/ui, Better Auth UI, Smooth UI, TripleD UI, shadcn-map, mapcn, c15t, PatternCraft, or another React component library?
- Does the project already use a form library or validation stack that later UI work should preserve?
- Does the project already use a table or data-grid library that later UI work should preserve?
- Does the project already use a virtualization or windowing library for long lists that later UI work should preserve?
- If the project already uses
shadcn/ui, is it mostly using the upstream primitives directly or local wrappers / compositions built on top of them? - If relevant, does the project already use
shadcn/ui Blocks, ReUI, shadcncraft, Kibo UI, Basecn, Tailark, shadcnblocks, React Bits, Animate UI, Animata, Magic UI, Motion Primitives, Efferd, Billing SDK, blocks.so, coss/ui, Better Auth UI, Smooth UI, TripleD UI, shadcn-map, mapcn, c15t, or PatternCraft as accelerators for common sections or flows? - If relevant, is the project primarily following a Radix-flavored or Base UI-flavored ecosystem for its headless primitives and composed components?
- If the project uses shadcn, does it already have a
components.jsonfile or signs ofshadcn create/shadcn applycustomizations that should be treated as the current baseline?
If the project already has a Tailwind setup, supported component library, form stack, or table/grid stack, treat that as the default unless the user explicitly wants to change it.
If the project is new and the user does not specify implementation preferences, use the framework-default matrix from framework defaults and record the result. When the form architecture is still open in a supported React project, default to TanStack Form and record that too. When the table or data-grid architecture is still open, default to TanStack Table and record that too. When the long-list or virtualization architecture is still open, default to TanStack Virtual and record that too.
Step 3: Write Design Context
Synthesize your findings and the user's answers into a ## Design Context section:
## Design Context
### Users
[Who they are, their context, the job to be done]
### Brand Personality
[Voice, tone, 3-word personality, emotional goals]
### Aesthetic Direction
[Visual tone, references, anti-references, theme]
### Implementation Defaults
[Detected or chosen React framework, Tailwind setup, component library defaults, form library / validation defaults, table/data-grid defaults, virtualization defaults, any block accelerators in use, any relevant Radix-vs-Base-UI ecosystem preference, any important `components.json` / `shadcn create` / `shadcn apply` customizations, and whether they came from the existing codebase, explicit user preference, or framework fallback defaults]
### Design Principles
[3-5 principles derived from the conversation that should guide all design decisions]
Derive the principles from concrete levers, not vague aspirations. Prefer things like:
- "Establish hierarchy with spacing and weight before adding color"
- "Use warm neutrals and restrained accent color"
- "Favor editorial typography and mostly square corners"
- "Keep one obvious primary action per screen"
The strongest principles explain both what to do and what to avoid. Treat them as default decisions with judgment, not as decorative slogans.
Write this section to .better-react-web-ui.md in the owning application's root. For a single-app repository, this is the repository root. Update an existing Design Context section in place and preserve unrelated sections. Migrate relevant legacy context from the same application scope without deleting the original. Keep shared defaults at the repository root and application-specific differences in the child file.
Legacy files are fallback inputs for migration only. New work should keep .better-react-web-ui.md as the canonical destination.
Make sure the persisted context captures this precedence clearly:
- detected existing project stack
- explicit user preference for a new project
- framework-based fallback defaults
When the distinction matters for React-oriented component ecosystems, also record whether the project is effectively Radix-flavored, Base UI-flavored, or mixed so later design work does not guess.
If shadcn-specific project configuration exists, record it as part of the baseline instead of letting later sessions assume the generic fallback defaults.
Use .better-react-web-ui.md as the context entry point for its application. Preserve links to existing authoritative design documents. Add optional page briefs only for requested persistent page decisions. Update AGENTS.md only when requested, using a pointer instead of duplicating context.
Confirm completion and summarize the key design principles that will now guide all future work.
FAQ
What does the setup skill do?
Gather and persist audience, brand, UX goals, React framework, Tailwind setup, and component defaults for future design work. Use when the user asks to establish or update reusable project design guidance. A request to build UI can proceed with existing context without running setup.
How do I install setup?
Run npx skills add https://github.com/aladicf/better-react-web-ui --skill setup in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/setup/ (personal) or .claude/skills/setup/ (project).
Which AI agents can use setup?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is setup safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains setup?
It is published by aladicf in aladicf/better-react-web-ui. It has 61 recorded installs.
More from aladicf/better-react-web-ui
frontend-design
aladicf/better-react-web-ui
Create distinctive React and Tailwind interfaces with strong hierarchy and polished implementation. Use when building or redesigning pages, flows, or components, or when another better-react-web-ui skill needs shared design guidance. Pair with add-ui for direct implementation or requested alternatives.
polish
aladicf/better-react-web-ui
Perform a final quality pass fixing alignment, spacing, consistency, and micro-detail issues before shipping. Use when the work is functionally complete and needs finishing touches—not when the hierarchy, structure, tone, or technical foundation still need major changes.
add-ui
aladicf/better-react-web-ui
Create or redesign React and Tailwind sections, pages, flows, shells, and components. Use when the user wants new UI or a redesign. Implement one requested or selected direction directly, or generate distinct alternatives when the user asks to compare options.
data-viz
aladicf/better-react-web-ui
Design charts, metrics, and data tables that help users interpret and compare data. Use when the user asks to visualize data, choose chart types, improve dashboard analytics, or make data presentation accessible. Dashboard navigation and shell layout alone belong to add-ui or arrange.
colorize
aladicf/better-react-web-ui
Open the skill to read its SKILL.md instructions.
arrange
aladicf/better-react-web-ui
Improve layout composition, spacing systems, grouping, and visual rhythm. Use when the user mentions weak layout structure, arbitrary spacing, weak grouping, crowded composition, or layout monotony rather than priority/emphasis problems.
Popular frontend & design skills
setup-matt-pocock-skills
mattpocock/skills
Configure this repo for the engineering skills: set up its issue tracker, triage label vocabulary, and domain doc layout. Run once before first use of the other engineering skills.
frontend-design
anthropics/skills
Guidance for distinctive, intentional visual design when building new UI or reshaping an existing one. Helps with aesthetic direction, typography, and making choices that don't read as templated defaults.
hyperframes-animation
heygen-com/hyperframes
All animation knowledge for HyperFrames — atomic motion rules, multi-phase scene blueprints, scene transitions, broader motion-design techniques, AND the seven runtime adapters (GSAP default, plus Lottie, Three.js, Anime.js, CSS keyframes, Web Animations API, TypeGPU). Use for any motion or animation task: pick 2-4 rules and compose, or load a blueprint, or look up runtime-specific API (e.g. GSAP eases / Lottie player / Three.js mixer). Also covers auditing an existing composition's choreography (animation map) and 24 named text-animation effects. HyperFrames-native: single paused timeline, seek-safe, deterministic.
prototype
mattpocock/skills
Build a throwaway prototype to answer a design question. Use when the user wants to sanity-check whether a state model or logic feels right, or explore what a UI should look like.
hyperframes-core
heygen-com/hyperframes
The HyperFrames composition contract — build one renderable project. Use for composition structure, the data- timing attributes, class="clip", tracks, sub-compositions, variables, framework-owned media playback, deterministic-render rules, and validation. Read before writing composition HTML.
vercel-react-best-practices
vercel-labs/agent-skills
React and Next.js performance optimization guidelines from Vercel Engineering. This skill should be used when writing, reviewing, or refactoring React/Next.js code to ensure optimal performance patterns. Triggers on tasks involving React components, Next.js pages, data fetching, bundle optimization, or performance improvements.