01. Colors02. Typography03. Spacing Units04. Containers05. Icons06. UI Elements07. UI Components08. Template Pages09. Data Viz Guidelines10. Useful Links

Tracker Design System

Tracker design system is a collection of guidelines, reusable user interface elements, and patterns (templates) that define the look, feel, and functionality of the website. It ensures consistency, improves efficiency in design and development, and provides a single source of truth documentation for all design-related decisions.

It’s the key to designing and developing systematically!

The Tracker design system consists of the following components:

• Style guidelines
• Reusable UI elements library
• Reusable components library
• Template pages

Colors

The Tracker website uses two sets of colors: Primary Colors and Utility Colors.

The Primary Colors represent the Tracker brand. At the core is OPMI Orange, taken directly from the OPMI logo. This color conveys a lively, forward-looking character and reinforces the OPMI brand identity.

To provide contrast across the website’s interface, the palette also includes darker and lighter variants of OPMI Orange generated with the Material Palette tool. Within this system, the original OPMI Orange corresponds to OPMI Orange 400.

The Utility Colors serve functional design needs. They include a neutral palette and status colors. The neutral palette is built from varying opacities of pure black, producing consistent shades of gray that maintain visual cohesion. Each shade is named with a number that indicates its opacity level.

Status colors, such as those used for inline links, provide clarity and visual feedback to guide user interactions.

Primary Colors

OPMI Orange 1000
#d16134

This darkest orange meets WCAG AA contrast standards for large text (24px and above) on white or OPMI Orange 10 backgrounds. Use it only for large headings.

OPMI Orange 900
#d16134

OPMI Orange 700
#e48440

OPMI Orange 400
#f4a954

Use this color for primary buttons. It meets WCAG AA and AAA contrast standards against the Black 87% foreground color.

OPMI Orange 100
#fbe0bd

Use this color for borders and dividers in the website’s UI.

It remains subtle while still clearly visible.

OPMI Orange 50
#fdf3e5

OPMI Orange 10
#fff9f3

Use this ultra-light orange for the site’s background.

Closer to white, it creates a soft, subtle backdrop.

Utility Colors

Black 87%
#212121

Use this ‘black’ for primary text on the site.

Tracker avoids pure black to reduce eye strain (too much contrast).

Black 65%
#595959

Use this color for secondary text, such as captions, and for borders on metric cards.

Black 38%
#9e9e9e

Use this color for less important text, such as secondary link text.

It is applied to links that expand metric cards.

Black 12%
#eoeoeo

Black 5%
#f2f2f2

White
#ffffff

Use pure white for metric card backgrounds only.

It creates high contrast against data points in Black 87%.

Link Blue
#005fcc

Use this color for inline links.

Division Blue
#5fa8d3

Use this color for the Division tag on metric cards.

Goal Area Blue
#1a659e

Use this color for Goal Area tag on metric cards.

Typography

Poppins is the typeface used throughout the website. This modern sans-serif font is well received within MassDOT.

The typography system follows a modular scale. The base font size is 16px, used for body text. All other text levels are calculated using a 1.25 multiplier, known as the “Major Third” scale. This scale creates medium contrast between text levels, providing hierarchy without being too dramatic. Spacing is optimized for readability and a comfortable reading experience.

Headings

The quick brown fox jumps over the lazy dog

H1 - 3.815rem / 61.04PX
Line height: 120% (Title line height)

The quick brown fox jumps over the lazy dog

H2 - 3.052rem / 48.83PX
Line height: 120% (Title line height)

The quick brown fox jumps over the lazy dog

H3 - 2.441rem / 39.06PX
Line height: 120% (Title line height)

The quick brown fox jumps over the lazy dog

H4 - 1.953rem / 31.25PX
Line height: 120% (Title line height)
The quick brown fox jumps over the lazy dog
H5 - 1.563rem / 25PX
Line height: 120% (Title line height)

Paragraphs

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.

Paragraph Text - 1REM / 16PX
Line height: 160% (Paragraph line height)
Class name: Regular-P

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.

Small Paragraph Text - 0.8rem / 12.8PX
Line height: 160% (Paragraph line height)
Class name: Small-P
Regular Paragraph Inline Link

Class name: Regular-inline-link

Small Paragraph Inline Link

Class name: Small-inline-link

Metric Cards

Metric cards in the Data Explorer section have their own typography system. They require a unique visual hierarchy to effectively display data-heavy information within their UI space.

The quick brown fox jumps over the lazy dog

Card Heading - 1rem / 600
Class name: Metric-card-name

123,456,789

Current Year's Value - 3.8rem / 600
Class name: Metric-card-CY-value

FY25

Current Year's Period - 1.5rem / 400
Class name: Metric-card-CY-year

123,456,789

Previous Year's Value - 1.5rem / 500
Class name: Metric-card-PY-value

FY24

Previous Year's Period - 1.25rem / 400
Class name: Metric-card-PY-year

The quick brown fox jumps over the lazy dog

Ideal trend text - 0.75rem / 400
Class name: Card-ideal-trend

123,456,789

Target Value - 0.875rem / 400
Class name: Target-values

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.

Data Notes - 0.875rem / 400
Class name: Data-notes-rich-text

Spacing Units

Spacing units (SU) provide a set of standardized measurements for consistent spacing between UI elements. The system starts at 4px and increases by multiples of two, creating a harmonious rhythm across the website.

To use this system, apply the same SU consistently to the margin or padding of similar elements or functional sections. For example, the bottom margins of all major sections should use the same SU.

Primarily, use margin-bottom and margin-right to set spacing, reflecting the website’s top-down and left-to-right layout.

0.5 SU - 4PX / 0.25REM

1 SU - 8PX / 0.5REM

2 SU - 16PX / 1REM

3 SU - 25PX / 1.5REM

4 SU - 32PX / 2REM

5 SU - 64PX / 4REM

6 SU - 80PX / 5REM

7 SU - 96PX / 6REM

8 SU - 128PX / 8REM

Containers

In this section, containers refer to the defined spaces that hold website content such as text and images. Containers use paddings and a width range to maintain visual balance and consistent proportions across the page.

We adjust container sizes at different breakpoints to provide the best possible layout for reading content. On larger screens, fixed-width containers ensure an optimal line length for text, keeping it comfortable to read and preventing lines from becoming too wide.

Click this link to view a live demo of the responsive containers on the Tracker website.

Containers on larger screen

Breakpoint: 1280px and up
Width: fixed 1280px
Paddings: 32px
Class name: Container-contents

Containers on Desktop

Breakpoint: Desktop
Width: fixed 992px
Paddings: 16px
Class name: Container-contents

Containers on Tablet

Breakpoint: Tablet
Width: 768 to 991px
Paddings: 16px
Class name: Container-contents

Containers on Mobile (L)

Breakpoint: Mobile (L)
Width: 479 to 767px
Paddings: 16px
Class name: Container-contents

Containers on Mobile

Breakpoint: Mobile
Width: 0 to 478px
Paddings: 8px
Class name: Container-contents

Icons

Icons play an important role in displaying information on Tracker’s metric cards. This set of icons is designed to communicate trends in metric changes. Their shapes and colors convey specific meanings while maintaining a muted visual appearance to preserve the overall visual hierarchy.

Value increased, positive change

postive up trend

Value decreased, positive change

postive down trend

Value increased, negative change

negative up trend

Value decreased, negative change

negative down trend

Value increased

neutral up trend

Value decreased

neutral down trend

No value change from previous year

neutral no change

UI Elements

This is the collection of smaller building blocks of the Tracker website. These user interface (UI) elements are used repetitively through out the website.

Primary button

The hover and focus (keyboard) states are set.
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
Check box (Data Explorer)

This is the checkbox UI for the data explorer.

The two focus states are set. To style it, style the checked state in the .fs-checkbox_button element.
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
Search field (Data Explorer)

This is the search filed UI for the data explorer.

The two focus states are set.
Filter by
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
Dropdown (Data Explorer)

This is the dropdown UI for the data explorer. It uses for the filers in the Data Explorer.

The focus (keyboard) state is set yet.

UI Components

This is the collection of larger building blocks of the Tracker website. A reusable component can often be comprised of established UI elements in the last section.

Top Navigation

Bottom Navigation

Footer

Metric Card

◆ Jayson Tatum 3-Point Percentage (Total)

Value decreased, negative change
up is ideal
34.3%
CY25
37.6%
CY24
Goal Area
Division
Click to show target(s) and notes
Targets
CY26CY27Long Term
38%39%40%

Data notes: Metric does not include playoff performance or preseason games.

This is the UI component used for metric cards in Tracker’s Data Explorer.

The styles and layouts are defined in the style selectors applied to the card.

Refer to the Typography section for more details on the metric card’s typography design.

Template Pages

This is a collection of template pages that provide consistent layouts and groups of UI elements serving the same function across the website, with different content populated each time.

Closer Looks Template Page
Link

Scrollytelling Template Page
Link

Data Visualization Guidelines

This guideline applies only to data visualizations created for the Tracker website. It outlines standards for color, typography, and chart sizing. For the 2025 Tracker, all visualizations are built using R’s ggplot package.

Colors

Tracker’s data visualizations use a dedicated color palette. Because the website is already visually rich, colors in data visualizations should be used sparingly to help readers focus on the data itself.

Colors in Tracker’s data visualizations primarily serve to distinguish between categories, especially when there are no headers. Most Tracker metrics include up to four categories. Use the following four colors to represent them:

MassDOT Blue
#057dc2

The MassDOT brand color from its logo.

Viz Turquoise
#06b8c2

An adjacent color to the MassDOT Blue, close on the color wheel but distinct enough to differentiate.

Viz Light Green
#99d998

A lighter, less saturated version of the MassDOT green from its logo to create a calmer tone suitable for data visualization.

Viz Dark Green
#005f38

An adjacent color to Viz Light Green, staying within the green family for visual harmony.

When Categories Have Headers

When data visualization marks include headers, use only MassDOT Blue in the visualization.

Bar chart showing number of contracts planned for next year: 71 for FY24 and 110 for FY25.

When Visualizing Categories Without Headers

When there are multiple categories without inherent meaning, use the colors in this order:

1, MassDOT Blue   
2, Viz Turquoise 
3, Viz Dark Green
4, Viz Light Green

Bar chart showing CIP Spend with categories Expansion and Reliability/Modernization for FY24, FY25, and FY26: FY24 total $1.6B ($1.4B Reliability/Modernization, $0.2B Expansion), FY25 total $2.1B ($1.9B Reliability/Modernization, $0.2B Expansion), FY26 total $1.8B all Reliability/Modernization with negligible Expansion.

When Comparing Two-Level Positive–Negative Categories

For positive and negative comparisons with two categories, use MassDOT Blue for the negative and Viz Dark Green for the positive.

When Comparing Four-Level Positive–Negative Categories

For four-level positive–negative visualizations(e.g., Poor, Fair, Good, Excellent), use two blues for negative and two greens for positive categories:

Viz Dark Green represents worse than Viz Light Green.
MassDOT Blue represents worse than Viz Turquoise.

When Categories Go Beyond These Examples

For categories beyond these examples, consult the data viz team or use your best judgment. If more than four colors are needed, please reach out to the data viz team for guidance.

When Visualizing Sequential Data

For sequential data (e.g., commute time), generate a sequential palette based on MassDOT Blue using this tool below. Adjust the number of colors as needed

When Working on MBTA-Related Visualizations

For MBTA-related visualizations, use the MBTA system colors whenever possible to maintain brand alignment.

Bar chart showing Mean Miles Between Failures for CY24: Commuter Rail Coach at 85,190 miles, Ferry at 23,407 miles, and The RIDE at 22,453 miles.

When Setting Text and Peripheral Element Colors

Titles, headers, and data labels should use Black 87% (#212121).
Peripheral elements such as axes, ticks, and axis labels should use Black 12% (#e0e0e0).

Typography and Size