Skip to content
The package of IBM’s typeface, IBM Plex.
JavaScript Python CSS Shell
Branch: master
Clone or download

Latest commit

LMapes Update README.md (#310)
* Update README.md

This change includes new non-Latin fonts and updates content based on the IBM Style guide.

* Update README.md

Hi Vince, this is ready to merge now.

* Update README.md

Change to one sentence per Mike Abbink.
Latest commit 6a3c091 May 12, 2020

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
IBM-Plex-Mono revert to prev version without apache license Aug 21, 2018
IBM-Plex-Sans-Arabic breaking: update arabic family name to include sans Nov 18, 2019
IBM-Plex-Sans-Condensed add license to font folders where it was missing Aug 21, 2018
IBM-Plex-Sans-Devanagari breaking: update thai and devanagari typeface names and font files Oct 3, 2019
IBM-Plex-Sans-Hebrew fix: update using new hebrew fixes Dec 9, 2019
IBM-Plex-Sans-Thai-Looped chore: add font files Jun 4, 2019
IBM-Plex-Sans-Thai fix: thai file names Oct 4, 2019
IBM-Plex-Sans-Variable feat: add plex sans variable font files Apr 7, 2019
IBM-Plex-Sans update to sans and devanagri Dec 5, 2018
IBM-Plex-Serif Update plex-serif font files, add plex-thai font files Oct 15, 2018
scripts fix: update using new hebrew fixes Dec 9, 2019
test/site breaking: update arabic family name to include sans Nov 18, 2019
.editorconfig fix: 0.4.1 - compiled files needed for docs and non-npm users Oct 20, 2017
.gitignore chore: npm ignore .DS_Store Apr 5, 2019
.npmignore chore: npm ignore .DS_Store Apr 5, 2019
.prettierignore fix: 0.4.1 - compiled files needed for docs and non-npm users Oct 20, 2017
CHANGELOG.md fix: update using new hebrew fixes Dec 9, 2019
LICENSE.txt revert to prev version without apache license Aug 21, 2018
README.md Update README.md (#310) May 12, 2020
package.json 4.0.2 Dec 9, 2019

README.md

IBM Plex® typeface

Plex

Meet the IBM Plex® typeface, our new corporate typeface family. It’s global, it’s versatile and it’s distinctly IBM.

We designed the IBM Plex typeface carefully to both meet our needs as a global tech company and express who we are as IBMers. It took two years and a lot of work to get here, but today we have a signature typeface we’re proud and excited to share with the world. Discover more about our development of the IBM Plex typeface.

The IBM Plex typeface is an open-source project and available for download and use following the Open Font License (OFL). The IBM Plex family comes in Sans, Serif, Mono and Sans Condensed, all with roman and true italics. The fonts have been designed to work well in user interface (UI) environments, as well as other mediums. This project provides all source files and file formats to support most typographical situations. Currently, IBM Plex Sans supports Extended Latin, Arabic, Cyrillic, Devanagari, Greek, Hebrew, Korean and Thai. Japanese and Chinese will follow in 2021 and 2022.

Thanks for trying the IBM Plex typeface! We hope you like it.

Add the IBM Plex 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
  • Sassy CSS (SCSS) code partials down to each weight, variant and split

We also include whole .woff2, .woff, and .eot files. However, we recommend using the prescribed split strategy for performance.

Installation with Node.js®:

npm install @ibm/plex

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 beforehand by declaring this variable:

$font-prefix: './custom/path/to/font/files';
@import 'node_modules/@ibm/plex/scss/ibm-plex.scss';

Note: If your app, for example, React, can’t import the font because it’s outside the ‘src’ directory, then edit the imported ‘ibm-plex.scss’ file and change the relative path prefix there as follows: $font-prefix: '' !default;

Below are the font-family rules for the family:

font-family: 'IBM Plex Mono', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', Courier, monospace;
font-family: 'IBM Plex Sans', 'Helvetica Neue', Arial, sans-serif;
font-family: 'IBM Plex Sans Condensed', 'Helvetica Neue', Arial, sans-serif;
font-family: 'IBM Plex Serif', 'Georgia', Times, 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.

You can’t perform that action at this time.