Installation
A quick guide to getting started with New UI.
Install
To set up the project, open your terminal and run the following command:
npm i -D @new-ui/foundations
Note: This command installs all New UI foundation packages, which include reset, colors, effects, spacings, and typography. If you need to install only specific packages, refer to the foundations documentation for instructions.
Import
Import the New UI foundations by adding the following line at the top of your SCSS file:
@use '@new-ui/foundations'; // Use `@import` for CSS
Set the theme
Set the theme by adding the data-new-ui-theme
attribute to your HTML wrapper element, for example:
<html data-new-ui-theme="light">
Available themes | Value |
---|---|
Light (Default) | light |
Light warm | light--warm |
Light cold | light--cold |
Dark (Default) | dark |
Dark warm | dark--warm |
Dark cold | dark--cold |
Usage guide
- All classes associated with the New UI are prefixed with a global namespace followed by a hyphen:
nu-
- In addition to a global namespace, we added prefixes to each class to make it more apparent what job that class is doing using BEM syntax.
c-
for UI components, such as.nu-c-h1
or.nu-c-card
l-
for layout-related styles, such as.nu-l-grid__item
or.nu-l--two-column
u-
for utilities, such as.nu-u-mb-<spacing-token>
or.nu-u-margin-bottom-pt2
is-
and has- for specific states, such as.nu-is-active
or.nu-is-disabled
. These state-based classes - would apply to.js-
for targeting JavaScript-specific functionality, such as.js-modal-trigger
. No styles are bound to these classes; they’re reserved for behavior only. For most cases, thesejs-
classes would toggle - state-based classes to an element.