Giter VIP home page Giter VIP logo

type's Introduction

IBM Type

With our new corporate typeface, IBM Plex, comes a new set of guidance and best practices. IBM typography is international and modern to reflect our brand and our design principles.


Warning: IBM Type is still in development and being carefully implemented in real cases where we can look for any difficulties. Look out for a stable v1.0.0 release in the near future.


IBM Type Checker (work-in-progress)

Check that any webpage follows the IBM Type with our Chrome and Firefox extension. This is helpful to developers as they code and designers as they review work.

Examples

We want to show off many examples of what IBM Type is capable of. Check out the examples below and learn at the bottom of this document how to provide a new example:

Design

Use this walkthrough to learn the foundational aspects of designing with IBM Type. Recommended for all first-time users.

IBM Type Sketch File

Use these artboards in your Sketch files to accomplish a design at each breakpoint your developer will be working with. Right click and select Save link as to save this Sketch file.

Code

The IBM Type code provides rendering and kerning that best reflects IBM Plex. The editorial and product style sets also take care of:

  • Size
  • Line height
  • Line length
  • Bottom margin
  • Weights

How to Use

To install, run npm install @ibm/type

If you want to use the compiled css, reference the file in the dist folder:

<link rel="stylesheet" type="text/css" href="node_modules/@ibm/type/dist/css/ibm-type.min.css">

If you want to use the sass partials, import the files in the src folder:

@import 'node_modules/@ibm/type/src/_core.scss';
@import 'node_modules/@ibm/type/src/_styles.scss';
@import 'node_modules/@ibm/type/src/_width.scss';

Check out the Performance section below for a description of each partial.

Developer Tutorial

Use this walkthrough to learn the foundational aspects of coding with IBM Type. Recommended for all first-time users.

Classname Reference

Classname Purpose
.ibm Container div to apply IBM Plex Sans to all type by default
.ibm-type-mono Switch a text node and children to IBM Plex Mono
.ibm-type-serif Switch a text node and children to IBM Plex Serif
.ibm-type-light Use the light weight of either IBM Plex Sans or IBM Plex Serif
.ibm-type-semibold Use the semibold weight of either IBM Plex Sans or IBM Plex Serif
.ibm-type-italic Use the italic style of either IBM Plex Sans or IBM Plex Serif
.ibm-type-[a, b, c, d, f, i, j, k] Use the sizing and weight of a style prescribed for editorial experiences
.ibm-type-[a, b, c, d, e, g, h] Use the sizing and weight of a style prescribed for product experiences

Performance

There are two distinct capabilities of this codebase and you are welcome to only import what you need:

  1. Core - All capabilities not listed below.
  2. Styles - Provides a map of the raw type scale and then a map and mixins of the type sets.
Includes core font references? Includes scale and styles? Includes line lengths? File Size Minified Gzipped
IBM Type Yes Yes Yes 39kb 34kb 2.6kb
_styles.scss Yes No No 15kb 11kb 1.3kb
_core.scss Yes No No 24kb 23kb 1.3kb

Finally, each font file (~40kb) has been split into four separate files (~10kb). If your webpage does not use any unicodes from one of the four split files, the user’s device will not have to download the split file.

type's People

Contributors

seejamescode avatar brandondh avatar boneskull avatar ncguk avatar

Stargazers

Roman avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.