.cursor/skills/update-component/SKILL.md
Update an existing Blade component (web only) using Figma designs and knowledgebase documentation
npx skillsauth add razorpay/blade update-componentInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Update an existing Blade component (web only) using Figma designs and knowledgebase documentation.
/update-component <ComponentName> <FigmaURL>
Example:
/update-component Popover https://www.figma.com/design/jubmQL9Z8V7881ayUD95ps/Blade-DSL?node-id=115756-259386
Read the knowledgebase documentation:
packages/blade-mcp/knowledgebase/components/<ComponentName>.mdRead the existing component implementation:
packages/blade/src/components/<ComponentName>/types.ts, <ComponentName>.web.tsx, index.ts, constants.ts.web.tsx filesParse the provided Figma URL to extract:
fileKey: The unique file identifier from the URL pathnodeId: From node-id= param, convert - to : (e.g., 115756-259386 → 115756:259386)Use the Figma MCP tools to get complete design information:
Tool: user-Figma → get_design_context
Arguments:
- fileKey: "<extracted-file-key>"
- nodeId: "<extracted-node-id>"
- clientLanguages: "typescript"
- clientFrameworks: "react"
- disableCodeConnect: true
Returns:
Tool: user-Figma → get_variable_defs
Arguments:
- fileKey: "<extracted-file-key>"
- nodeId: "<extracted-node-id>"
- clientLanguages: "typescript"
- clientFrameworks: "react"
Returns a JSON object with all design tokens used in the component.
Tool: user-Figma → get_screenshot
Arguments:
- fileKey: "<extracted-file-key>"
- nodeId: "<extracted-node-id>"
Returns a visual screenshot of the component for reference.
Compare the Figma design with the current implementation:
.web.tsx files)Follow this order:
types.ts) - Add new props, update existing typesconstants.ts) - Add new defaults or constants*.web.tsx) - Implement the changesindex.ts) - Export new types/components if neededpackages/blade-mcp/knowledgebase/components/<ComponentName>.md)*.stories.tsx) - Add Storybook examples for new featuresUse ReadLints tool on modified files to check for linter errors and fix them.
packages/blade/src/components/<ComponentName>/
├── __tests__/
├── _decisions/
│ └── decisions.md
├── constants.ts
├── index.ts
├── <ComponentName>.native.tsx ← IGNORE (native)
├── <ComponentName>.stories.tsx
├── <ComponentName>.web.tsx ← UPDATE THIS
└── types.ts
.web.tsx files, ignore .native.tsxtesting
This rule helps in writing and running unit tests for components of blade design system
documentation
Generate bi-weekly announcement posts for Blade Design System updates by analyzing changelog entries from the past two weeks
development
This rule helps in writing API decisions for new components of blade design system
tools
Visually verify component changes in Storybook using the agent-browser CLI tool