Back to skills
SKILL.md
Figjam Plugin
ASecurityFigJam plugin development workflow. Use when modifying code.ts (canvas rendering), ui.ts (WebSocket/UI), fixing plugin build errors, or adding new rendering features.
- 666 stars
- 0 votes
- 0 copies
- 1 view
- Added February 8, 2026
Works with
Security analysis
100/100npx -y skills add majiayu000/claude-skill-registry --skill figjam-plugin --agent claude-codeAre you the author of Figjam Plugin?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/majiayu000-figjam-plugin)---
name: figjam-plugin
description: FigJam plugin development workflow. Use when modifying code.ts (canvas rendering), ui.ts (WebSocket/UI), fixing plugin build errors, or adding new rendering features.
---
# FigJam Plugin Development
## Architecture
| Thread | File | APIs | Role |
|--------|------|------|------|
| Main | `code.ts` | `figma.*` only | Canvas rendering |
| UI | `ui.ts` | Browser APIs | WebSocket client, connection UI |
**Critical**: `code.ts` has NO browser APIs (`window`, `document`, `fetch`, `WebSocket`).
## Communication
```
CLI ←─ WebSocket ─→ ui.ts ←─ postMessage ─→ code.ts ←─ figma.* ─→ Canvas
```
## Build & Import
```bash
cd packages/plugin && bun run build
```
Import: Figma Desktop → Plugins → Development → Import from manifest → `packages/plugin/manifest.json`
## Debugging
- **UI errors**: Right-click plugin UI → Inspect
- **Main errors**: Plugins → Development → Open console
## JSON Import
- Accepts DSL (nodes array) or IR (nodes object)
- Validates with `@figram/core`, normalizes to IR
- Errors shown in alert with path + message
## Key Files
| File | Purpose |
|------|---------|
| `manifest.json` | Plugin config |
| `src/code.ts` | Canvas rendering |
| `src/ui.ts` | WebSocket + UI |
| `src/icons/` | Service icons |
Attribution
Comments
Loading comments…
Newsletter
Get the weekly list of safe new skills, and the ones we pulled.