This is an alternative site for discovering Elm packages. You may be looking for the official Elm package site instead.
Library for working with typographic scales
version 1.0.0
license BSD3
native-modules False
elm-version 0.15.0 <= v < 0.16.0
Tag 1.0.0
Committed At 2015-05-14 13:57:02 UTC
elm-lang/core 2.0.1 <= v < 3.0.0 2.1.0


Library for typographic scales

When dealing a lot with text, it can be very easy to be inconsistent in the font sizes used across pages and documents. This is because we tend to consider a font size as a single value in isolation. We rarely relate the size of a title or a heading to that of the body. Yet, they lie on the same space.

To solve this problem, we can resort to using scales. The idea here is that you pick a "base" size and a scale to compute all other sizes for you.

For example, suppose we pick the "base" size of 12pt, where we consider the "base" size to mean the size of the body text. Now let's pick some scale... say the major third. The major third has an interval of 5 : 4 which means that each time you apply this scale to a value, the value grows by five fourths (i.e. continuously multiplied by 1.25).

So, if we define our scale to be:

myScale =
  majorThird 12

Then, we can define our font sizes as follows:

fine      = myScale -2 -- 7.68pt

small     = myScale -1 -- 9.6pt

body      = myScale 0  -- 12pt

heading3  = myScale 1  -- 15pt

heading2  = myScale 2  -- 18.75pt

heading1  = myScale 3  -- 23.4375pt

title     = myScale 4  -- 29.296875pt

So, now we have simple values we can use throughout our application or documents and guarantee consistency with respect to the font sizes. Furthermore, if we dislike the sizes, we need only change the definition of myScale to use some other scale or some other base size.