materialdesignweb
materialdesignweb copied to clipboard
Material Design for Web
materialdesignweb
Material Design for Web
Demo
https://clshortfuse.github.io/materialdesignweb/
Getting started
npm: npm install @shortfuse/materialdesignweb
Core modules
Module | CSS-Only Support | Description | status |
---|---|---|---|
aria | :x: | Handles ARIA attributes, ARIA roles, tabindexes, and keyboard interaction | preRC |
document | :white_check_mark: | Applies color-scheme, standalone-window, and user agents detection | RC |
overlay | :white_check_mark: | Applies overlay states to components | RC |
ripple | :white_check_mark: | Applies press ripple on interactions | preRC |
theme | :white_check_mark: | Applies ink and surface colors based on light/dark context | preRC |
transition | :x: | Transitions shape and content between elements | preRC |
Component Modules
Component | Integrations | CSS-Only Support | Keyboard Support | ARIA Role | ARIA Attributes | Status |
---|---|---|---|---|---|---|
appbar | button | :white_check_mark: | N/A | :x: | :x: | beta |
backdrop | planned | |||||
banner | button | :white_check_mark: | N/A | :x: | :x: | beta |
bottomnav | bottomnavitem† overlay | :x: | :white_check_mark: | tablist | aria-multiselectable aria-orientation | RC |
bottomnavitem | overlay ripple | :x: | :white_check_mark: | tab | aria-selected | RC |
button | overlay ripple | :white_check_mark: | :white_check_mark: | button | aria-disabled‡ aria-pressed‡ | stable |
card | button divider | :white_check_mark: | N/A | :x: | :x: | preRC |
chip | chipitem | :white_check_mark: | :x: | :x: | :x: | alpha |
chipitem | :x: | :x: | :x: | :x: | :x: | alpha |
datatable | button | :white_check_mark: | :white_check_mark: | grid | aria-selected | preRC |
dialog | button | :white_check_mark: | :white_check_mark: | dialog | aria-modal | preRC |
divider | :white_check_mark: | separator‡ | preRC | |||
elevation | :white_check_mark: | RC | ||||
fab | button† | :white_check_mark: | :x: | :x: | :x: | beta |
grid | :white_check_mark: | :x: | :x: | preRC | ||
imagelist | use grid | |||||
layout | :white_check_mark: | :x: | :x: | :x: | beta | |
list | listitem† listexpander | :white_check_mark: | :white_check_mark: | group list listbox radiogroup tree | aria-orientation | preRC |
listcontent | overlay ripple | :white_check_mark: | :white_check_mark: | listitem link option radio treeitem | aria-checked aria-selected | preRC |
listitem | :white_check_mark: | :white_check_mark: | treeitem none | aria-expanded aria-hidden | preRC | |
listsecondary | :white_check_mark: | :white_check_mark: | none‡ | preRC | ||
menu | divider menuitem† | :white_check_mark: | :white_check_mark: | menu | aria-hidden | preRC |
menuitem | overlay ripple | :white_check_mark: | :white_check_mark: | menuitem menuitemradio menuitemcheckbox | aria-disabled aria-checked | stable |
navdrawer | use layout | |||||
progress | :white_check_mark: | :x: | :x: | beta | ||
selection | :white_check_mark: | :white_check_mark: | checkbox‡ radio‡ | aria-checked aria-disabled | preRC | |
sidesheet | use layout | |||||
slider | :white_check_mark: | :x: | :x: | :x: | alpha | |
snackbar | button | :white_check_mark: | :white_check_mark: | alert | aria-hidden | RC |
tab | tablist tabcontent | :x: | RC | |||
tabcontent | tabpanel† | :x: | :white_check_mark: | RC | ||
tabitem | overlay ripple | :x: | :white_check_mark: | tab | aria-selected | RC |
tablist | tabitem† overlay | :x: | :white_check_mark: | tablist | aria-multiselectable aria-orientation | RC |
tabpanel | :x: | :white_check_mark: | tabpanel | aria-expanded aria-hidden | RC | |
textfield | list | :white_check_mark: | :white_check_mark: | :x: | :x: | preRC |
tooltip | :white_check_mark: | :x: | :x: | beta | ||
type | :white_check_mark: | RC |
Adapter classes
Adapter | Components | Status |
---|---|---|
datatable | button datatable† | preRC |
dom | preRC | |
list | domadapter† listitem† | preRC |
search | list† textfield† | preRC |
Legend
-
planned - Planned for later
-
draft - Not yet functional
-
alpha - Partially working
-
beta - Working but incomplete
-
preRC - Needs minor changes
-
RC - Needs testing as-is
-
stable - Production-ready
-
† - Required
-
‡ - Apply manually