Meet the IBM Plex® typeface, our 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 available for download and various uses following the Open Font License (OFL). The IBM Plex family comes in Sans, Serif, Mono, and Sans Condensed, all with roman and true italics. Plex has been designed to work well in user interface (UI) environments and other mediums. This project provides all source files and multiple formats to support most typographical situations. Currently, IBM Plex Sans supports Extended Latin, Arabic, Cyrillic, Devanagari, Greek, Hebrew, Japanese, Korean and Thai. Traditional and Simplified Chinese versions will be available in Q1 2024, and IBM Plex Math in Q2 2024.
Thanks for trying the IBM Plex typeface! We hope you like it.
Please download the latest zip files from our releases page for installation.
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;
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.
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
.