JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 90229
  • Score
    100M100P100Q251520F
  • License OFL-1.1

The package of IBM’s typeface, IBM Plex Serif

Package Exports

    This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@ibm/plex-serif) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

    Readme

    IBM Plex® Serif

    Plex

    Add the IBM Plex Serif typeface to your device

    Please download the latest zip files from our releases page for installation.

    Web usage

    This project contains the following for web development:

    • IBM Plex .woff2 and .woff files split into performant subsets of glyphs
    • Cascading style sheet (CSS) code to reference any weight, variant and split
    • Sass (SCSS) modules for more granular configuration and control of output css

    We only include .woff2 and .woff files due to NPM package size limitation.

    Installation with Node.js®:

    npm install @ibm/plex-serif

    Manually installing the files for web development can be done by downloading the latest web zip from our releases page.

    Developers using the CSS files should keep the directory structure as is, so the font files will be found. If you’re importing the SCSS files, you can set the path of the font files by declaring $font-prefix: 'font-path-prefix' inside the @use. For example:

    @use '@ibm/plex-serif/scss' as PlexSerif with (
      $font-prefix: 'font-path'
    );
    
    @include PlexSerif.all();

    Font weights

    We provide two ways of importing weights into your project. Using PlexSerif.all() will import all available weights and PlexSerif.default() will import only light, regular and semibold weight. You can also disable unwanted weights inside the @use. For example:

    // Disable weights
    @use '@ibm/plex-serif/scss' as PlexSerif with (
      $font-weights: (
        bold: false,
        boldItalic: false,
        extralight: false,
        extralightItalic: false,
        italic: false,
        light: false,
        lightItalic: false,
        medium: false,
        mediumItalic: false,
        regular: false,
        semibold: false,
        semiboldItalic: false,
        text: false,
        textItalic: false,
        thin: false,
        thinItalic: false
      )
    );
    
    @include PlexSerif.all();

    IBM Plex Serif typeface weights map:

    Weight Enabled by default with PlexSerif.all() PlexSerif.default()
    bold
    boldItalic
    extralight
    extralightItalic
    italic
    light
    lightItalic
    medium
    mediumItalic
    regular
    semibold
    semiboldItalic
    text
    textItalic
    thin
    thinItalic

    Below are the font-family rules for the family:

    font-family: 'IBM Plex Serif';

    Building the fonts from source

    Requirements

    To build binary font files from .vfb sources you need FontLab Studio 5. A Python script called IBM Plex export FDK files.py is necessary to export the proper files from FontLab. To run this script you’ll need the RoboFab library. Also, you’ll need to have the Adobe Font Development Kit for OpenType (AFDKO) installed.

    Building one font

    From FontLab, run IBM Plex export FDK files.py and choose a directory with IBM Plex .vfb source files. The script will create a new directory called fdk in which subdirectories are created for every font. The script will export files necessary for AFDKO in those subdirectories.

    Subsequently, OpenType Fonts (OTFs) or TrueType Fonts (TTFs) can be generated from the command line using makeotf, which is part of the AFDKO toolset. Information and usage instructions can be found by executing makeotf -h.

    IBM Telemetry IBM Telemetry

    This package uses IBM Telemetry to collect de-identified and anonymized metrics data. By installing this package as a dependency you are agreeing to telemetry collection. To opt out, see Opting out of IBM Telemetry data collection. For more information on the data being collected, please see the IBM Telemetry documentation.