UI Kit

Install

We provide a simple UI Kit/CSS micro-framework to allow developers to easily build Livestorm branded UI elements. This UI kit reflects our main branding guidelines.

To install the UI kit within your templates, simply copy-paste the following CSS tag in the HTML code of your plugin template:

<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/livestorm/livestorm-plugin/dist/assets/css/style.css">

Then you'll be able to use all of the below components.

If you need only specific parts of the framework (buttons, forms, tooltips, etc), use one of these urls.

Forms

Basic tooling allowing you to quickly build a form or simple actions buttons in any kind of template.

Buttons

ClassesDescription
ls-buttonAdd this to a <button> tag
ls-button-wrapperWraps the content inside the button
ls-button-[red,green,orange]-primaryColor of the button
ls-button-[red, green, orange]-secondaryAlternative colors
ls-button-tertiaryAlternative color
ls-button-smallSmall version
ls-button-extra-smallExtra small version
ls-button-squareSquare version (useful to display an icon).
ls-button-icon ls-svg-wrap ls-iconWraps an SVG icon
ls-right-iconPositions the icon on the right side
ls-left-iconPositions the icon on the left side

Checkbox

ClassesDescription
ls-checkboxThe wrapper class of the checkbox input

Inputs

Simple classes that provide basic layout, padding and border colors for your forms.

ClassesDescription
ls-formAdd this to the <form> tag
ls-inputAdd this to each <input> tag
ls-textareaAdd this to each <textarea> tag
ls-labelAdd this to each <label> tag

Radio

ClassesDescription
ls-radioThe wrapper of the radio input

Switches

The switch component is very simple, let's break it down so you can understand how it's done:

<label class="ls-switch ls-switch-blue"> <!-- The container on which you add the classes -->
  <input type="checkbox"> <!-- The actual input, no JS here, just get its value -->
  <div></div> <!-- This div controls the rounded element that moves -->
  <div></div> <!-- This div is in charge of the changing background color -->
</label>
ClassesDescription
ls-switchThe container of your switch. Will create a regular green switch.
ls-switch-blueAdd this to get the Livestorm blue variant of the switch.

Table

ClassesDescription
ls-tableThe wrapper of the table

Components

Tooltips

Can be used on any kind of tag, text or buttons just like below.

ClassesDescription
ls-tooltipContainer of the tooltip
ls-tooltip-textAdd this to a span within div.tooltip. This is the actual tooltip
ls-tooltip-leftAdd this to the span.tooltip-text to make it appear on the left of the element
ls-tooltip-rightAdd this to the span.tooltip-text to make it appear on the right of the element
ls-tooltip-bottomAdd this to the span.tooltip-text to make it appear on the bottom of the element
ls-tooltip-topAdd this to the span.tooltip-text to make it appear on top of the element

Warnings

Visual feedback or callout for your forms or actions.

Feel free to use the SVG icons you will find in the above HTML.

ClassesDescription
ls-warning-messageAdd this class to a div that is the container of the warning
ls-warning-infoBlue information box
ls-warning-successGreen success box
ls-warning-warningYellow warning box
ls-warning-errorRed error box
ls-warning-message-contentAdd this class to the div that represents the textual content of the warning whenever you add actions

Avatars

Just an helper class that will allow you to create lists of users.
If there are no avatar available, you can also use it with simple initials.

ClassesDescription
ls-user-avatarAdd this class to a figure
ls-rounded-fullYou can add this class to the figure to fully round the image

Layout

Colors

All our branding colors are exposed as CSS variables that you can use in any regular CSS block. Please use them as much as possible and avoid using custom colors. You'll find below the list of color variables, that you can copy by clicking on each individual block:

Usage:

.text {
  color: var(--color-grey-800);
}

Texts

Text classes allow you to easily format your texts without regard to the html tag (h1,h2, etc), all tags style have been reset.

Following sizes are available in regular, medium, semibold: 9, 11, 12, 14, 16, 20, 24, 32, 40, 48.

ClassesDescription
ls-text-XX-regularRegular font-weight. Replace XX with any of the available sizes
ls-text-XX-mediumMedium font-weight. Replace XX with any of the available sizes.
ls-text-XX-semiboldSemibold font-weight. Replace XX with any of the available sizes.
ls-text-[11, 12, 14]-semibold-ucUppercase semibold font-weight. Replace XX with any of the available sizes.

Grid

Very simple, minimalist grid system.
We believe standard flexbox combined with our margin and padding helpers should be enough, if it's not the case do not hesitate to use a dedicated grid framework.

ClassDescription
ls-gridContainer of the grid
ls-rowOne row that will contain columns
ls-columnA single column

Margins & paddings

Just a few helper classes to help you build layouts that match Livestorm spacings and paddings.
One thing to note: margins and paddings are multiple of 4 (4, 8, 16, 20, 24, etc).

Classes
ls-ml-automargin-left: auto
ls-mr-automargin-right: auto
ls-mx-automargin-left: auto
margin-right: auto
ls-mt-[1-8]margin-top
ls-mb-[1-8]margin-bottom
ls-mr-[1-8]margin-right
ls-ml-[1-8]margin-left
ls-pt-[1-8]padding-top
ls-pb-[1-8]padding-bottom
ls-pl-[1-8]padding-left
ls-pr-[1-8]padding-right

Display & more

ClassesDescription
ls-space-betweendisplay: flex;
justify-content: space-between;
ls-centerdisplay: flex;
align-items: center;
ls-d-blockdisplay: block
ls-w-fullwidth: 100%
ls-w-halfwidth: 50%
ls-roundedborder-radius: 8px
ls-rounded-fullborder-radius: 100%

Images

ClassesDescription
ls-img-fluidMake image responsive with auto height + max width 100%

CDN

We provide CDN urls for multiple sub parts of the UI Kit.
Use one of these if you only need specific components in the framework.