wso2/oxygen-ui/oxygen-form
Claude Code and agent skill by wso2/oxygen-ui
- community
Checking that the SKILL.md file is still in the repository.
Generate forms with Form.* components and validation. Use when creating input forms, multi-step wizards, or form validation. Covers field labels and required-field marking.
Install
npx vskill@latest install wso2/oxygen-ui/oxygen-formSKILL.md
Generate Oxygen UI Form
Instructions
- Read
.claude/oxygen-ui/components.mdfor Form.* API - Use
Form.Sectionfor grouping fields - Use
Form.Stackfor field layout - Give every field a fixed label on top with
labelPlacement="top"(see Field Labels) - Mark each required field with
required; leave optional fields unmarked - Add validation with
errorandhelperTextprops
Critical Rules
- Import form components from
@wso2/oxygen-ui - Use controlled components with state
- Show validation errors with
errorandhelperTextprops - Use theme tokens for spacing
- Use
labelPlacement="top"on everyTextFieldin a form; never use the floating label in forms - Set
requiredon every required field; never use theoptionalprop or write "(Optional)" in a label - Write all UI text in sentence case (see below)
UI Text
Write all titles, action text, and content in sentence case. Capitalize only the first word, proper nouns, product names, and acronyms.
- Applies to section headers, labels, placeholders, helper text, error messages, and buttons
- Write the text in sentence case in the source; never change case with
textTransform: 'uppercase'or'capitalize'
Field Labels
Forms use a fixed label above the input, not MUI's floating label. labelPlacement is an Oxygen UI prop, so import TextField from @wso2/oxygen-ui; the MUI TextField ignores it.
Required fields
- The developer marks each required field with the
requiredprop. Nothing is required by default requireddraws a*after the label, colored by the theme, and setsrequiredon the native input, so screen readers announce it- Do not add a
*to the label text yourself, and do not color labels red; the theme handles it - Keep
requiredin sync with validation: every field the form rejects when empty isrequired, and no other field is
Optional fields
- Leave optional fields unmarked. Do not pass the
optionalprop and do not write "(Optional)" in the label, placeholder, or helper text - Do not describe a section as optional in its header or subheader; unmarked fields already read as optional
Select and Autocomplete
The same rules apply. Use TextField with select, or pass labelPlacement="top" and required to the TextField in renderInput:
Do and don't
Basic Form
Form with Sections
Login Form
Multi-Step Wizard
Use a wizard only when later steps depend on earlier choices; otherwise use a page form (see Choosing a Container in the oxygen-component skill). The example below shows the stepper structure; real wizards also need:
- 3 to 7 named steps; order by dependency, optional steps last or skippable
- Validate each step before Next; Back never loses data
- A review step before submit, with an edit link per step
- Cancel always available, confirming if progress will be lost; save drafts for long flows
- A success state with clear next actions
This is the start of the file. Read the full SKILL.md on GitHub.
Security
- Security scanPassed, 95 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingpackages/oxygen-ui/.claude/skills/oxygen-form/SKILL.md
Popularity
- Repository stars
- 50
- Repository forks
- 45
- 7-day trend score
- 20
Stars and forks are for the whole GitHub repository, not this skill alone. Refreshed 23 Mar 2026, 7 months ago.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/wso2/oxygen-ui/oxygen-form)