⚠️ After March 18, 2024, the FastStore documentation will be migrated to the Developer Portal. For more information, access the official release note.

Typography

A standard scale and basic definitions for your text: font family,weight and sizes.

Font Family

Global TokenValue
--fs-text-face-body-apple-system, system-ui, BlinkMacSystemFont, sans-serif
--fs-text-face-titlevar(--fs-text-face-body)

Weights

Global TokenValue
--fs-text-weight-light300
--fs-text-weight-regular400
--fs-text-weight-medium500
--fs-text-weight-semibold600
--fs-text-weight-bold700
--fs-text-weight-black900

Typography Scale

Use a type scale to add rhythm to your typography and ensure consistency throughout the project.

Access https://type-scale.com (opens in a new tab) and pick a scale that suits the store's branding.

Mobile Scale

  • 12

    Lorem ipsum dolor sit amet, consectetur adipiscing elit.

  • 14

    Lorem ipsum dolor sit amet, consectetur adipiscing elit.

  • 16

    Lorem ipsum dolor sit amet, consectetur adipiscing elit.

  • 18

    Lorem ipsum dolor sit amet, consectetur adipiscing elit.

  • 20

    Lorem ipsum dolor sit amet, consectetur adipiscing elit.

  • 22

    Lorem ipsum dolor sit amet, consectetur adipiscing elit.

  • 24

    Lorem ipsum dolor sit amet, consectetur adipiscing elit.

  • 28

    Lorem ipsum dolor sit amet, consectetur adipiscing elit.

  • 32

    Lorem ipsum dolor sit amet, consectetur adipiscing elit.

  • 36

    Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Desktop Scale

  • 12

    Lorem ipsum dolor sit amet, consectetur adipiscing elit.

  • 14

    Lorem ipsum dolor sit amet, consectetur adipiscing elit.

  • 16

    Lorem ipsum dolor sit amet, consectetur adipiscing elit.

  • 20

    Lorem ipsum dolor sit amet, consectetur adipiscing elit.

  • 24

    Lorem ipsum dolor sit amet, consectetur adipiscing elit.

  • 28

    Lorem ipsum dolor sit amet, consectetur adipiscing elit.

  • 32

    Lorem ipsum dolor sit amet, consectetur adipiscing elit.

  • 40

    Lorem ipsum dolor sit amet, consectetur adipiscing elit.

  • 48

    Lorem ipsum dolor sit amet, consectetur adipiscing elit.

  • 56

    Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Global TokenValue
--fs-text-size-base16px
--fs-text-scale-desktop4px
--fs-text-scale-mobile2px
--fs-text-size-012px
--fs-text-size-114px
--fs-text-size-2var(--fs-text-size-base)
--fs-text-size-3calc(var(--fs-text-size-2) + var(--fs-scale))
--fs-text-size-4calc(var(--fs-text-size-3) + var(--fs-scale))
--fs-text-size-5calc(var(--fs-text-size-4) + var(--fs-scale))
--fs-text-size-6calc(var(--fs-text-size-5) + var(--fs-scale))
--fs-text-size-7calc(var(--fs-text-size-6) + (var(--fs-scale) * 2))
--fs-text-size-8calc(var(--fs-text-size-7) + (var(--fs-scale) * 2))
--fs-text-size-9calc(var(--fs-text-size-8) + (var(--fs-scale) * 2))

Semantical tokens

Sizes

Global TokenValue
--fs-text-size-title-hugevar(--fs-text-size-8)
--fs-text-size-title-pagevar(--fs-text-size-7)
--fs-text-size-title-productvar(--fs-text-size-4)
--fs-text-size-title-sectionvar(--fs-text-size-4)
--fs-text-size-title-subsectionvar(--fs-text-size-4)
--fs-text-size-title-minivar(--fs-text-size-4)
--fs-text-size-leadvar(--fs-text-size-3)
--fs-text-size-menuvar(--fs-text-size-base)
--fs-text-size-bodyvar(--fs-text-size-base)
--fs-text-size-legendvar(--fs-text-size-1)
--fs-text-size-tinyvar(--fs-text-size-0)

Max Lines

Global TokenValue
--fs-text-max-lines2

Adding a custom font

Using a custom font helps to keep a cohesive brand across your store. To maintain readability in your store, choose an easily readable font and the appropriate color and text size. Follow the steps below to add a custom font to your store.

  1. Go to the src folder and create the fonts folder.
  2. Inside the src/fonts folder, create a new WebFonts.tsx file and add a <link> tag for your font-family of choice as in the example below.
/* eslint-disable @next/next/no-page-custom-font */
 
function WebFonts() {
  return (
    <>
      {/* Add a <link> tag for your font-family of choice */}
      <link
        rel="stylesheet"
        href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;900&display=swap"
      />
    </>
  );
}
 
export default WebFonts;
 
  1. In your custom theme file, usually src/themes/custom-theme.scss, use the --fs-text-face-body token with the font-family you chose.
ℹ️

We recommend using fallback fonts (opens in a new tab) as system fonts to ensure quick rendering, consistent and readable content.

@layer theme {
  .theme {
    // --------------------------------------------------------
    // Typography (Branding Core)
    // --------------------------------------------------------
      --fs-text-face-body: 'Inter', -apple-system, system-ui, BlinkMacSystemFont, sans-serif;
  }
}
  1. Run yarn dev and check the browser to see the new font-family applied.