Reference the Figma haptics hand-off from the Pulsar skill (#36)

* Reference the Figma haptics hand-off from the Pulsar skill

A designer binds a Pulsar preset to a layer with the Pulsar Figma plugin.
The developer then implements that screen with an agent driving the Figma
MCP — and the haptics silently don't come along: `get_design_context` and
`get_metadata` return visuals, layout and text, and a preset binding is
not a visual property, so nothing in the design context hints that a node
has one. The screen looks fully implemented and every haptic the designer
chose is missing.

The skill's job here is to make the agent go and look, so that is all it
does. `Figma-sourced designs` names the failure and says to read the docs
page before implementing, because nothing about the bindings is inferable
from the design context and guessing drops or misassigns haptics silently.
Step 4 notes that a binding outranks the agent's own preset choice, since
the designer has already made it.

The contract itself stays in exactly one place. Where the bindings live,
how to read them, which nodes to skip and how one becomes a call are
documented in the Pulsar docs and linked from Sources — the same way this
skill already defers to the SDK pages rather than inlining API detail.

The description gains a Figma trigger clause so the skill fires on that
work in the first place, and the README entry says the hand-off is covered.

The docs page goes live with software-mansion/pulsar#237.

* Update README.md

---------

Co-authored-by: Krzysztof Piaskowy <piaskowyk@piaskowyk.local>
This commit is contained in:
Krzysztof Piaskowy
2026-08-27 15:15:27 +02:00
committed by GitHub
parent 16f16b06fc
commit 7ed7cbad9b
2 changed files with 21 additions and 4 deletions
+1 -1
View File
@@ -46,7 +46,7 @@ Production patterns for React Native apps on the New Architecture, covering:
### [pulsar-haptics](./skills/pulsar-haptics/)
Implementation, migration, design, and troubleshooting for Software Mansion's Pulsar haptics SDK across its supported native, cross-platform, and Web packages.
Implementation, migration, design, and troubleshooting for Software Mansion's Pulsar haptics SDK across its supported native, cross-platform, and Web packages. Also covers the Figma MCP integration.
### [radon-mcp](./skills/radon-mcp/)
+20 -3
View File
@@ -6,9 +6,10 @@ description: >
Web. Use when the user names Pulsar; a Pulsar package such as react-native-pulsar,
com.swmansion:pulsar, com.swmansion:pulsar-kmp, pulsar_haptics, or pulsar-haptics;
a Pulsar import, preset, composer, setting, installation, migration, or runtime
problem; or explicitly requests migration to Pulsar. Do not use for generic haptics,
vibration, Core Haptics, browser Vibration API, expo-haptics, animation, audio,
motion, or UI-polish work without Pulsar evidence or explicit Pulsar intent.
problem; a Figma design carrying Pulsar haptic bindings; or explicitly requests
migration to Pulsar. Do not use for generic haptics, vibration, Core Haptics, browser
Vibration API, expo-haptics, animation, audio, motion, or UI-polish work without
Pulsar evidence or explicit Pulsar intent.
---
# Pulsar Haptics
@@ -28,6 +29,7 @@ platform and version index, then open the matching official page:
- [Flutter](https://docs.swmansion.com/pulsar/sdk/flutter/)
- [Web](https://docs.swmansion.com/pulsar/sdk/web/)
- [React Native migration from `expo-haptics`](references/expo-haptics-to-pulsar-migration.md)
- [Figma MCP: reading bound presets out of a design](https://docs.swmansion.com/pulsar/skills/figma-mcp/)
Use the [official Pulsar source](https://github.com/software-mansion/pulsar), matching
release tag, and installed package for version-specific evidence. Use the
@@ -92,6 +94,10 @@ were not attached. Keep pseudocode conceptual; do not invent method-like placeho
### 4. Choose feedback
When the work implements a Figma design, check whether the designer already chose:
a bound node carries its preset in the file, and that binding outranks your own
selection. See [Figma-sourced designs](#figma-sourced-designs).
Prefer a named or system preset when it matches the event:
1. Infer event semantics before searching.
@@ -163,6 +169,17 @@ preset or composer, setup and fallback behavior, automated checks, physical-hard
result, and any unverified limitation. Never report hardware validation that was not
performed.
## Figma-sourced designs
Haptics bound with the Pulsar Figma plugin never reach the Figma MCP's design tools:
`get_design_context` and `get_metadata` return visuals, layout, and text only, so a
screen can look fully implemented and be missing every haptic the designer chose.
Read [Figma MCP](https://docs.swmansion.com/pulsar/skills/figma-mcp/) before
implementing such a design. None of it is inferable from the design context — where
the bindings live, how to read them, which nodes to skip, how one becomes a call —
and guessing silently drops or misassigns haptics.
## Stop conditions
- No Pulsar evidence after inspection: stop using this skill.