Getting Started
This code style guide is a reference for application owners and developers to understand how an application will look and feel. It is used to convey design language, define design rationale, and explain how to use markup..
Global
Global styles can be found in the global.css
file.
Colors
Aubergine
Guava
Ecru
Mint
Stone
Fonts
We use two fonts:
- Bricolage Grotesque
- Headlines
- Titles
- Buttons
- Links
- Roboto
- Body copy
- Bullets
- Captions
-or-
font-weight: 300; font-family: 'Bricolage Grotesque', sans-serif;
font-weight: 400; font-family: 'Bricolage Grotesque', sans-serif;
font-weight: 500; font-family: 'Bricolage Grotesque', sans-serif;
font-weight: 600; font-family: 'Bricolage Grotesque', sans-serif;
font-weight: 700; font-family: 'Bricolage Grotesque', sans-serif;
font-weight: 300; font-family: 'Roboto', sans-serif;
font-weight: 400; font-family: 'Roboto', sans-serif;
font-weight: 500; font-family: 'Roboto', sans-serif;
font-weight: 600; font-family: 'Roboto', sans-serif;
font-weight: 700; font-family: 'Roboto', sans-serif;
This is a heading (H1) with Bricolage Grotesque font
This is a heading (H2) with Bricolage Grotesque font
This is a heading (H3) with Bricolage Grotesque font
This is a heading (H4) with Bricolage Grotesque font
Paragraphs
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. Excepteur sint occaecat cupidatat non
proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Paragraph with modifiers:
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. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit
anim id est laborum.
Images
- Images on the style guide are randomly generated from Lorem Picsum.
- When appropriate, it is suggested to wrap the image element with a div element even if the div
element is not initially styled. This will aid any Javascript that may manipulate the image
after page load.
Horizontal Rules
Logos
- Logo file paths will be determined by the platform they live in.
- It is suggested to use the svg file format but there are png formats available here.
- Due to being changed infrequently, logos are a rare exception and can be referenced within the CSS
file.
Utilities
Utility styles can be referenced in the utils.css file.
Utilities are simple HTML classes typically scoped to a single CSS property, like border-style or
background-color. Utilities can be used additively to style an object from scratch or to override a
style defined in component CSS.
Utility-first CSS [replaces] high-level classes, such as container and heading, with low-level classes,
such as bg-light-gray and margin-bottom-30. You can think of them as low-level design
commodities with predictable names.
Selectors
- Utility class names are typically a hyphenated property-value pair. Example: margin-bottom:
30px; would be represented by margin-bottom-30. This provides an
intuitive approach to the utility class naming schema.
- The value of the property can be used alone if it is unique and intuitive. Instead of
display-block, we can simply use block. Instead of color-secondary-green we can
use secondary-green.
- Other exceptions include class names such as hide (display: none !important;) and
mobile-hide which convey and provide more meaning than display-none, etc.
- Abbreviated class names can also be used when appropriate. Example: font-size: 18px; would
become fs-18 and font-weight: 700; would become fw-700. Excessive use of
abbreviations should be avoided as it can result in non-intuitive class names.
- Unlike a vendor utility-first library, these utility classes are custom and created and added as
needed.
Examples
An element that remains hidden until the mobile media query is triggered:
Incorrect:
Correct:
Fluid Typography Example:
Lorem ipsum dolor sit amet