Best Practices Flashcards

1
Q

What are Components?

A

These are reusable objects in your design. They can be as simple as an individual button, or as complex as an entire navigation header (comprised of instances of other components like logos, avatars, buttons and menu items).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What are Component Instances?

A

Once you make something a component, you can create instances of it, which are essentially connected copies of that component—so if you update the design of the original component, the instances will reflect that change.

For example, if you change the color of a button component to red, and then publish those changes, any file that used instances of that button will get a notification. They can then choose whether to update their instances to red.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What are Styles?

A

These are reusable collections of properties that you can easily apply to elements in your design.

In Figma, you can create styles for text, colors, grids, and effects like shadows and blurs. If components are reusable objects, think of styles as the attributes you might apply to those objects.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What are Libraries?

A

In Figma, you can share components and styles by publishing them. This turns your file into a library, so you can use instances of those components in other files.

Updates to the design of your components can be published and pushed out to other documents where instances of your components live. Users have the choice to accept those updates or continue working with an old version (if required).

You can create libraries for anything you need to repeatedly use.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

How do you structure your components atomically?

A

When you begin creating high-quality components, especially with the intention of sharing them, consider starting with smaller atomic components that can be used as building blocks. You’ll notice patterns in your design that you want to be consistent. For example, the shape of a card, or the shape of a button.

A good strategy is to turn these repeated elements into a component that you can reuse by nesting instances of them inside other components. Imagine turning a simple button shape into a component (to be used as an atom), and nesting it within every button component that you create. The result: all buttons use the exact same starting point; if that shape were to change, it can be updated by changing that single atomic component.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

y prefixing component names with a ‘_’ or a ‘.’, they will be…

A

excluded from publishing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

By nesting of the original component, into another main one,…

A

you can override the properties and have variations that stay connected as the design evolves.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

The text override is preserved when switching between related components if

A

text layers are named the same.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What are Effect Styles?

A

Effect styles allow you to consistently reuse effects like layer blurs, background blurs, drop shadows, and inner shadows.

For example: the Material design system includes an entire set of drop shadows to coincide with different layers that are stacked in the UI—shadows are repeatedly used used to create the effect of different “elevations” tied to certain elements like modals and buttons.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What are Grid Styles?

A

Often overlooked, grid styles can help standardize layout grids across multiple projects and viewports. If you have specific grids you use from desktop down to mobile phones, consider defining grid styles so they can be easily shared.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What are Style Names?

A

Style names are critical for alignment with predefined properties in your design system.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

You can also use prefixes separated by a forward slash in the names to

A

group styles in the style picker (note: you can only add one level of hierarchy).

For example, if you add “Alerts/” before several styles, they will all appear together under the subheading “Alerts”.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

You might use these prefixes to:

A
group colors by hue
group colors by theme or type
group accessible colors together
group type styles by font family or size
group grid styles by viewport size
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What are Style Descriptions?

A

Add descriptions to your styles—these will appear in tooltips in much the same way they do for components. The descriptions can help clarify their intended usage by surfacing additional information to help designers select the right style.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What are Image Fills for Placeholder Images?

A

You can create styles for image fills. Lets say you have some user avatars, or placeholder photos you commonly use. You may not know what shape, aspect ratio, or size they will need to be applied to. By creating image fills, you can easily apply them to any shape.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

The first and most common way to group components is with

A

with forward slash component names to organize them into a hierarchy.

buttons/primary/default
buttons/primary/hover
buttons/secondary/hover
buttons/secondary/active

17
Q

What is Figma’s recommendation to organize components?

A

Use pages and frames within your library to organize components into a hierarchy in the components panel and instance menus.

18
Q

What are Uniform Grids?

A

Creates a series of uniformly spaced fields across your frame (imagine a sheet grid paper) at whatever size you specify.

19
Q

What are Baseline Grids?

A

A baseline grid is one that’s established from the baselines your typography sits on.

These appear as visual aids in your design spanning the width of your design and repeating vertically at an even interval.

20
Q

Baseline grids intervals are largely dependent on what?

A

On your typography scales and line-heights.

e.g.) In many 8pt grid systems, a 4pt baseline is used. This basic unit makes the math easy and scalable as you start to set up different type sizes and line-height combinations.

21
Q

By using a row grid, with the type set to “Top”, we can create the foundation for a …

A

baseline grid

22
Q

What happens when you apply constraints in Figma?

A

They help you define the resizing behavior of elements in relationship to their parent frame.

So if you wanted an element to stay pinned to the top right of a frame (like a close button), applying constraints will ensure that the element maintains its distance from the top and right without changing its size as the frame grows or contacts.

23
Q

When should you use variants?

A
  • Multiple versions of similar components share the same properties such as state, size, count, layout, and more.
  • Components can toggle between two distinct variations that could be represented as true/false, on/off, or yes/no.
  • Component variants map to properties that align with your code components following the prop/value format used in popular front-end frameworks like React and Vue.
24
Q

When should you avoid using variants?

A
  • Adding variants creates an unmanageable number of permutations, consider nesting instances or using base components instead.
  • Colors or themes might create an increasing number of variants and would need to be maintained across every component.
25
Q

What is an 8-point grid system?

A

When everything is spaced and sized using numbers that are multiples of 8

26
Q

What are the three approaches to naming text styles?

A
  • Sized-based naming system (XS, S, M, L, XL)
  • Semantic naming system that corresponds to respective HTML tags in production (caption, paragraph, h1, h2)
  • Descriptive or functional naming system that explains the styles’ intended use (alert, modal-header, button-label)