Using Claude
Getting started
- Open this project in Claude Code
- Describe what you want your plugin to do
- Claude asks a few clarifying questions
- Claude generates the code, builds it, and gives you installation instructions
Example prompts
Here are real prompts that work:
Simple plugins
"Build a plugin that renames all selected layers to lowercase"
"I want a plugin that counts how many text layers are on the current page and shows the number"
"Make a plugin with a color picker that applies the chosen color to all selected frames"
More complex plugins
"Build a plugin that lets me select multiple text layers, choose a font from a dropdown, and apply it to all of them"
"I want a plugin that exports every top-level frame on the current page as a separate PNG file"
"Create a plugin with a sidebar that shows a list of all components in the file, with a search box to filter them"
Changing an existing plugin
"Add a settings panel with a toggle for 'include hidden layers'"
"Change the button color to blue and make the window wider"
"My plugin crashes when nothing is selected — add an error message instead"
Tips for good results
- Be specific about what you want — "rename layers" is better than "do something with layers"
- Describe the UI you imagine — "a form with two inputs and a submit button"
- Mention edge cases — "show an error if nothing is selected"
- Iterate — if the first result isn't perfect, describe what to change
What Claude does behind the scenes
When you describe a plugin, Claude:
- Modifies
packages/common/src/networkSides.ts(message types) - Modifies
apps/design-plugin/src/plugin/plugin.network.ts(Figma API handlers) - Modifies
packages/ui/src/app.tsx(the plugin's UI) - Modifies
apps/design-plugin/figma.manifest.ts(plugin name) - Runs
bun run buildto verify everything works - Prints step-by-step Figma installation instructions