Skip to content

Coherent Person Across a Design

The Coherent Person feature ensures that all data fields within the same named container refer to the same fictional individual. Instead of filling each field with an independent random value, the plugin assigns one fictional person per container and reuses their data across all relevant fields.

Without coherent person mode, running batch fill on a user card might produce:

  • Name: Marie Dupont
  • Phone: (random, unrelated)
  • Email: [email protected]
  • Address: (yet another random person’s address)

This looks inconsistent and makes prototypes harder to present to stakeholders.

  1. Enable the checkbox — In the plugin panel, toggle “Coherent person” on.
  2. Select a named container — The plugin identifies containers (frames, groups, components) whose name includes one of these keywords: user, client, profile, contact, person, member.
  3. Run any category — The plugin generates one fictional person for the container and fills all text nodes within it using that person’s data consistently.

The same person is maintained within a single named container. If your design has multiple cards (e.g., a list of 5 contacts), each card gets its own distinct fictional person.

Given a frame named user-card containing:

  • A text layer named name
  • A text layer named phone
  • A text layer named email
  • A text layer named address

With coherent person enabled and locale set to 🇫🇷 FR:

name: Marie Dupont
phone: 06 23 45 67 89
address: 12 Rue de la Paix, 75001 Paris

Every value belongs to the same fictional person.

The coherent person keeps their locale. If you select 🇩🇪 DE for a frame, the same fictional German person is used for all fields:

name: Hans Müller
phone: +49 30 12345678
address: Hauptstraße 23, 10115 Berlin

Switching the locale after filling will regenerate a new person for the new locale.

The plugin recognizes these keywords in container names (case-insensitive):

user · client · profile · contact · person · member · customer · utilisateur · client · profil · nutzer · kunde · usuario

If the parent container name does not match any keyword, the plugin falls back to standard independent random filling for each node.

  • Rename your frames meaningfully — A frame called user-card will trigger coherent person; a frame called Frame 42 will not.
  • Nested containers — The plugin looks at the immediate named ancestor. Keep your user card logic at one nesting level for best results.
  • Multiple cards in a list — Select all the user cards at once; each card gets its own distinct fictional person.