Executed workflow · passed within scope

Figma: reusable cards and shared changes

Build a reusable native pricing-card component for fictional Aster Studio at 320, 768 and 1280 pixels; test main-component and shared-variable propagation; export all three compositions.

Tested Synthetic inputsNo comparative score
Interaction method
Authenticated Figma connector and native Plugin API construction, mutation and readback; browser canvas inspection; native PNG/SVG export.
Plan and environment
Starter plan and Full seat reported by the authenticated connector. The browser canvas was inspected in a read-only view; its editing permissions were not evaluated.

What happened

An agent built native Aster Studio pricing cards at 320, 768 and 1280 pixels through the authenticated Figma connector. One main component supplied nine instances, with eight variables and four text styles. Changing its shared CTA updated six labels while three Starter overrides stayed unchanged. A shared colour change reached all nine backgrounds. Native PNG and SVG exports preserved the intended dimensions and were visually inspected. The prices are invented fixture data. To test propagation, Studio and Team deliberately inherited Choose plan instead of their fixture-specific CTA labels; Starter retained its explicit override. This does not test Figma AI or manual design usability.

Fewertools agents executed this workflow. This is a record of the task below, not a claim that Clinton personally tested the product. Documentation, price and historical opinion dates remain separate.

Fictional Aster Studio cards in the native 768 px Figma export
Native Figma PNG at 768 pixels. Fictional plans and prices; two inherited CTAs and one preserved override.
Fictional Aster Studio cards stacked in the native 320 px Figma export
Native Figma PNG at 320 pixels. The three cards stack without intersecting.

Assertions and observed results

  • PassedNative reusable component library

    Expected: One main card component, nine live instances, eight variables and four text styles.

    Observed: Native readback found one component, nine component-linked instances, eight local variables and four styles.

  • PassedMain-component change and explicit overrides

    Expected: Six inherited CTA labels change; three deliberate overrides keep their own labels.

    Observed: Six labels became View plan. All three Starter overrides stayed Start a project.

  • PassedShared colour-variable change

    Expected: All nine CTA backgrounds use the changed shared accent variable.

    Observed: All nine resolved to RGB 0.12, 0.28, 0.38 and retained their variable bindings. Shared spacing read back as 16 pixels.

  • PassedNative plan content

    Expected: All three plan names, fictional prices and feature lists survive in all three compositions.

    Observed: Each composition contained Starter at GBP 0, Studio at GBP 12/month and Team at GBP 29/month with the fixture features. Each had 14 native text layers and no image-filled layers.

  • PassedComposition bounds and card separation

    Expected: Nine cards stay inside their respective composition bounds without intersecting.

    Observed: Native bounds passed for all nine cards across the three frames. The exported compositions were also visually inspected.

  • PassedNative PNG and SVG export

    Expected: Both export types preserve the three intended frame dimensions.

    Observed: Native PNG sizes and SVG view boxes were 320×969, 768×405 and 1280×405.

  • PassedPublication export metadata

    Expected: Publication exports exclude account identifiers and private cloud links.

    Observed: A scan of the listed native exports found no account name/email, private file IDs or private cloud URLs. Raw UI screenshots and connector receipts were excluded.

Reproduce the task

  1. Create a new scratch Figma design file. Do not alter sharing or existing designs.
  2. Create eight local colour/spacing/radius variables and four text styles; create one reusable card with Plan, Price, Features and CTA text properties.
  3. Instantiate the card three times in each native frame. Use a vertical stack at 320 pixels and horizontal rows at 768 and 1280 pixels. Add the synthetic-data notice.
  4. Set the Starter CTA override to Start a project in every frame. Leave Studio and Team using the shared default Choose plan.
  5. Change the main-component CTA label to View plan and the shared accent to RGB 0.12, 0.28, 0.38. Read native instance text and fill-variable bindings back.
  6. Inspect each composition and export each frame through Figma as PNG and SVG. Check native instance counts, bounds, names/prices/features, PNG dimensions and SVG view boxes.
  7. All plan names, invented prices and features match pricing-cards.json. To test inheritance, Studio and Team start with the component default Choose plan instead of their fixture-specific CTA labels. Starter deliberately overrides the default with Start a project. Changing the main label to View plan then tests six inherited labels and three preserved overrides.

Inputs and saved outputs

The downloads contain synthetic test material. Account identifiers and private project links are excluded. Hashes identify the exact published bytes.

Limits of this result

  • One synthetic task in one connected account on one date. This establishes only the listed observed results; it is not a general reliability, speed, security, usability, accessibility or customer-support evaluation.
  • No peer product ran the same task in this session, so this is not comparative evidence and does not establish a winner.
  • The fixture and intermediate adapter work were supplied by the evaluator. No product AI quality was evaluated.
  • Connector-assisted construction tests native component, variable and export behaviour. It does not measure manual drawing, discoverability or onboarding.
  • Figma AI, Dev Mode handoff, real-time collaboration, library publishing, design-to-code and version history were not tested.
  • The files show an invented design and invented prices. They are not screenshots of Figma's own pricing or evidence of design quality.
  • Figma's SVG export converts this text to vector outlines. Editable native text was verified in Figma; editable SVG typography was not established.
  • The connector cannot return a very large SVG string in one response, so the native asset-download operation was used. That is a connector boundary, not a Figma export failure.

This record does not change a general product score or name an overall winner. Changes to editorial opinions or recommendations require review.

Continue the research