Design System

I had the opportunity to contribute to the HIP Design System from 2017 to 2020. While the system is continuously growing and evolving, here's a snapshot of how it looked like at the end of this year.

tag.png
 

Our Goals

 

Create powerful, user-friendly web applications for data-centric interfaces.

The Human Interface Language (HIL) & Application Hosting Portal (AHP) framework allows for Rapid Application Development of User Interfaces. HIL accelerates development by providing a catalog of Prefabricated Interfaces and a streamlined API for data ingestion and transformation. AHP framework supports orchestrating the management of a set of Views to define a single product (i.e., application).

 
paltform v small.jpg
 
 
 
team v small.jpg
 
  • Plug-and-play Components that speed UI/UX development

  • Composable and reusable CSS modules that establish consistent design

  • A data- first API supporting rapid application development

  • Solutions developed to accommodate a broad range of user needs to translate into a richer online experience for all users

 
component number.png

Components

pattern number.png

Patterns

icon number.png

Icons

O1 Foundation

 

01.1 Core Color

We divided the colors into different categories for ease of use and systematization. We have assigned a self-name to each color for proper understanding within the team during the discussion.

 
color.png

Usage

color usage.jpg

Analysis of main contrast

We searched the central contrast combination between blue, grey, and white colors, trying not to back down the brand color palette and pass WCAG 2.00 standards.

 
type contrast.jpg
 

01.2 Typography

Typography is the essential medium of communication between interface and users, especially for assessable product. A clear and straightforward guideline around text usage is the key to the success of accessibility design.

 
 
font.jpg
 

01.3 Spacing

spacing.jpg
 

01.4 Level

level.jpg

Example of Typography Combination and Spacing

Example of typography combination and spacing.png

01.5 Icon

Icon Group.jpg

02 Components

Components are one of the fundamental building blocks of the design system. Each component has been designed and coded to solve a specific UI problem. We've created 112 components in this library. Here are some examples below.

 
 

02.1 Button

 

02.1.1 Primary Button

Use the primary button to pay the user's attention to the main actions on the page. Place this button only once per screen.

Primary Button.jpg
 

02.1.2 Secondary Button

If the actions are not included in primary actions, use the secondary button. It can be used several times per screen as needed.

Secondary Button.jpg
 
 

Sizes and Usage Examples

Sizes and usage examples.jpg
 

02.2 Input and Text Area

Use text input when the expected user input is a single line of text instead of a paragraph. Use the text area when the expected user input is more than one sentence.

 
 

02.3 Dropdown

 

02.3.1 Default

It allows the user to select one option from a list.

dropdown default.jpg
 

02.3.2 Multiselect

It allows the user to select multiple options from a list and filter.

dropdown multi.jpg
 
 

02.3.3 Combo Box

It allows a user to enter any value or choose a value of a list of suggested, likely, or desired values.

dropdown combo.jpg
 
 
dropdown note.jpg
 
 

Best Practices for Labels

  • Labels must be visible when an input gets focus.

  • Labels must be announced to the screen reader on focus.

  • Ensure the helper text that appears under an input is read when an assistive technology user stops at an input using ARIA.

 
lables.jpg
 

02.4 Data Table

 

02.4.1 Default

The default data table comes with a base style with only the title, header, table elements, and rows.

 

02.4.2 With selection

Bulk actions are functions that may be performed on multiple items within a table. This type of table enables the user to select individual rows and apply an action. A bulk action toolbar appears when table rows are selected.

 
Sizes and usage examples.jpg
 

02.5 Notification

 

02.5.1 Line

Inline notifications show up in task flows to notify users of the status of an action. They usually appear at the top of the primary content area.

notification line.jpg
 

02.5.2 Growl

Growls are non-modal, time-based window elements used to display short messages; they typically appear at the top right of the screen and disappear after 6 seconds.

notification growl.jpg
 
 
so much more.png
 

03 Pattern

Patterns are best practice solutions for how a user achieves a goal. They show reusable combinations of components and templates that address common user objectives with sequences and flows.

 

03.1 Global Navigation

 

03.1.1 External Product Header

Global header using in an external product must include the Branding Bar above.

Header External.jpg
 

03.1.2 Internal Product Header

Global header using in an internal product does not need to have the Branding Bar. 

Header internal.jpg
 

03.1.3 Left Panel

The left panel allows for more navigational items to stack vertically and an additional hierarchy level when paired with header navigation. Compared to header-only site navigation, this arrangement means sub-menus can remain open without overlaying or interfering with the page content.

 
side panel.jpg
 
Header note.jpg
 

03.2 Dialog

Use dialogs commonly for short and non-frequent tasks, such as editing or management tasks.

 

03.2.1 Standard

Must include a backdrop when to use.

03.2.2 Full-screen

For mobile screen usage only. No backdrop is needed.

When to use a dialog

  • Use to focus the user's attention.

  • Use for short task completion.

  • Use to gather input from the user.

  • Use to display relevant information.

dialog.jpg
 

Dialog Variants

Dialog Variants.jpg
 

03.3 Login

spacing.jpg
login i.jpg
 

03.4 Calendar and Timeline

 
timeline.jpg
calendar.jpg

Credit

 

Design

Keith Vejvod

Fabricio Torres-Rueda

Development

Michael Jaworski

Sravan kumar kachavarapu

Kishan Bhutiya

Lin Chen

Product Management

Keith Vejvod

 

Academic Planning Redesign