Noph UI is a UI library for Svelte that follows the Material 3 Expressive guidelines. It has the
buttons, fields, navigation and feedback components an app needs, with theming, dark mode and
accessibility built in.
Why Noph UI
The whole spec, coveredEvery component family in Material 3 Expressive is here: buttons, FABs and split buttons, text fields and pickers, navigation bars, rails and drawers, sheets, snackbars and more.
Zero dependenciesOne package with no other dependencies. Your users download only the components.
download
Expressive motionSpringy shape morphs, ripples and wavy progress from the Material 3 Expressive spec. All of it respects a visitor's reduced motion setting.
animation
Accessible by defaultComponents build on native elements, so roles, labels, keyboard navigation and focus rings come with them.
The default theme is a set of Material 3 color roles written as CSS variables. Use the palette
button in the header to pick a source color. This page changes to match. Then copy the generated
theme into your project.
Primary--np-color-primary
Primary container--np-color-primary-container
Secondary container--np-color-secondary-container
Tertiary--np-color-tertiary
Tertiary container--np-color-tertiary-container
Surface variant--np-color-surface-variant
Error--np-color-error
Surface--np-color-surface-container-highest
Start in two minutes
Copy code
npminstall noph-ui
Import the default theme once, in your root layout.
Copy code
import'noph-ui/defaultTheme'
Then import a component and use it in your markup.