Bird
Raised Fist0
Figmabi_tool~8 mins

Slots pattern for flexible components in Figma - Dashboard Guide

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Dashboard Mode - Slots pattern for flexible components
Business Question

How can we design a flexible dashboard component system that allows easy customization and reuse using the slots pattern?

Sample Data
RegionProductSalesMonth
NorthApples100Jan
SouthOranges150Jan
EastBananas200Feb
WestApples130Feb
NorthOranges170Mar
SouthBananas160Mar
Dashboard Components
  • KPI Card Component (Slot: Title, Value, Icon)
    Slots:
    • Title: "Total Sales"
    • Value: Sum of Sales = 910
    • Icon: Shopping cart icon
  • Bar Chart Component (Slot: Data, X-Axis Label, Y-Axis Label)
    Slots:
    • Data: Sales by Region
    • X-Axis Label: "Region"
    • Y-Axis Label: "Sales"

    Data:
    • North: 270
    • South: 310
    • East: 200
    • West: 130
  • Table Component (Slot: Columns, Rows)
    Slots:
    • Columns: Region, Product, Sales, Month
    • Rows: All sample data rows
Dashboard Layout
+----------------------+----------------------+
|      KPI Card        |      Bar Chart       |
|  (Total Sales)       |  (Sales by Region)   |
+----------------------+----------------------+
|                  Table Component               |
|          (Detailed Sales Data Table)           |
+------------------------------------------------+
Interactivity

Filters for Region and Month connect to all components:

  • When a Region is selected, the KPI card updates total sales for that region, the bar chart highlights that region, and the table shows only rows for that region.
  • When a Month is selected, all components update to show data only for that month.
  • The slots pattern allows swapping the KPI card's icon or title easily without changing the component structure.
Self Check

If you add a filter for Region = South, which components update and how?

  • KPI Card: Shows total sales for South = 310
  • Bar Chart: Highlights South region bar; other bars dim or hide
  • Table: Displays only rows where Region is South (2 rows)
Key Result
A flexible dashboard using slots pattern with KPI card, bar chart, and table showing sales data by region and month.

Practice

(1/5)
1. What is the main purpose of the Slots pattern in Figma components?
easy
A. To create placeholders inside components for flexible content
B. To lock components so they cannot be edited
C. To export components as images
D. To automatically generate color palettes

Solution

  1. Step 1: Understand the Slots pattern concept

    Slots act as placeholders inside components where you can insert different content later.
  2. Step 2: Identify the main purpose

    This allows components to be flexible and reusable by changing only the slot content.
  3. Final Answer:

    To create placeholders inside components for flexible content -> Option A
  4. Quick Check:

    Slots = placeholders for flexible content [OK]
Hint: Slots hold flexible content inside components [OK]
Common Mistakes:
  • Thinking slots lock components
  • Confusing slots with export features
  • Assuming slots generate colors automatically
2. Which of the following is the correct way to define a slot inside a Figma component?
easy
A. Group layers and rename the group to 'Slot'
B. Use the 'Export' option on a layer
C. Add a frame and mark it as a slot placeholder
D. Create a text layer with the word 'Slot'

Solution

  1. Step 1: Recall how slots are defined

    Slots are defined by adding a frame or container inside a component and marking it as a slot placeholder.
  2. Step 2: Evaluate the options

    Only Add a frame and mark it as a slot placeholder correctly describes adding a frame and marking it as a slot placeholder.
  3. Final Answer:

    Add a frame and mark it as a slot placeholder -> Option C
  4. Quick Check:

    Slot definition = frame marked as slot [OK]
Hint: Slots are frames marked as placeholders inside components [OK]
Common Mistakes:
  • Confusing slots with export settings
  • Thinking renaming groups creates slots
  • Assuming text layers define slots
3. Given a component with a slot named IconSlot, what happens when you drag a new icon into this slot instance?
medium
A. The component breaks and shows an error
B. The original component's icon changes everywhere
C. The slot disappears and cannot be reused
D. The new icon replaces the slot content in that instance only

Solution

  1. Step 1: Understand slot instance behavior

    When you drag content into a slot in an instance, it replaces the slot content only for that instance.
  2. Step 2: Check effect on original component

    The original component remains unchanged; only the instance shows the new content.
  3. Final Answer:

    The new icon replaces the slot content in that instance only -> Option D
  4. Quick Check:

    Slot content replaced per instance [OK]
Hint: Slot content changes only in the instance, not original [OK]
Common Mistakes:
  • Thinking original component changes globally
  • Believing slots disappear after use
  • Assuming errors occur on drag
4. You created a slot inside a component but when you drag content into it, the content does not appear. What is the most likely cause?
medium
A. The slot frame was not marked as a slot placeholder
B. The component is locked and cannot be edited
C. The dragged content is not supported by Figma
D. The component has no fill color

Solution

  1. Step 1: Check slot setup

    If content does not appear when dragged, the slot frame might not be properly marked as a slot placeholder.
  2. Step 2: Rule out other causes

    Locking or fill color does not prevent slot content from showing; Figma supports common content types.
  3. Final Answer:

    The slot frame was not marked as a slot placeholder -> Option A
  4. Quick Check:

    Unmarked slot frame blocks content [OK]
Hint: Mark frames as slots to accept content [OK]
Common Mistakes:
  • Assuming locking blocks slot content
  • Blaming unsupported content types
  • Thinking fill color affects slots
5. You want to create a reusable button component with a slot for an icon and a slot for label text. Which approach best uses the Slots pattern to achieve this?
hard
A. Create two separate components: one for icon and one for label, then group them
B. Create a component with two frames marked as slots: one for the icon and one for the label text
C. Use a single text layer and change its content for icon and label
D. Create a component with fixed icon and label layers without slots

Solution

  1. Step 1: Understand the goal

    You want a flexible button where icon and label can be changed independently.
  2. Step 2: Apply Slots pattern

    Defining two frames as slots inside the button component allows replacing icon and label content separately in instances.
  3. Step 3: Evaluate other options

    Grouping separate components or fixed layers does not provide the same flexibility and reusability.
  4. Final Answer:

    Create a component with two frames marked as slots: one for the icon and one for the label text -> Option B
  5. Quick Check:

    Multiple slots = flexible reusable component [OK]
Hint: Use multiple slot frames for flexible parts [OK]
Common Mistakes:
  • Using fixed layers instead of slots
  • Grouping separate components without slots
  • Trying to use one text layer for icon and label