Salt provides you with a suite of UI components and a flexible theming system. With no customisation, the default theme offers an attractive and modern look-and-feel, with both light and dark variants and support for a range of UI densities. We have included a theming system which allows you to easily create theme variations, or in fact substitute alternate themes.
Salt has been developed with the following design goals:
There are four packages you can install:
@salt-ds/core
is required, this contains stable components and receives
new features and patch updates when needed.@salt-ds/lab
is where we introduce new components which are under initial development until they are stable and moved over to core. This is typically an unstable environment and may have major breaking changes.@salt-ds/theme
is required, this contains the Salt .css files required
for any application you develop with Salt.@salt-ds/icons
contains SVG-based icons you can use in your
application.Depending on the package manager you use, edit and run one of the following commands to install the packages you need:
npm install @salt-ds/core @salt-ds/theme @salt-ds/lab @salt-ds/icons
Or
yarn add @salt-ds/core @salt-ds/theme @salt-ds/lab @salt-ds/icons
You will then need to import the .css files into your application, along with any components that you plan to use.
Here’s a quick example of a Call-to-Action (CTA) button for your reference:
import { Button, SaltProvider } from "@salt-ds/core";
import "@salt-ds/theme/index.css";
function App() {
return (
<SaltProvider>
<Button variant="cta">CTA Button</Button>
</SaltProvider>
);
}
Salt is a high-quality, WCAG 2.1 compliant solution for building great, accessible experiences for your users.
We support specific combinations of assistive technologies (ATs) and browsers, outlined in the table below.
Operating System | Web browser | Screen reader |
---|---|---|
Windows | Firefox | NVDA |
Chrome | JAWS | |
macOS | Safari | VoiceOver |
Thanks to Chromatic for providing the visual testing platform that helps us review UI changes and catch visual regressions.