Mdash seeks to leverage HTML, not replace it or try to outsmart it.
This makes Mdash ideal for all web projects and skill levels.
linkable | tiny 6kb | responsive | accessible | zero dependencies
Mdash UI elements are built with 100% web standards following the TAC CSS methodology. This makes Mdash extremely light, very fast, and compatible with any type of web project.
Mdash can work with any framework client-side and server-side or no framework at all because it's made from native HTML, custom HTML tags, and Custom Elements. Be it SSR, SPA, PWA, static site, and even some email templates - whatever type of project you have Mdash will work. This is especially useful to organizations looking to share a design system across products.
Try Mdash right now by simply linking to the CDN files below and visiting the doc site for code samples and full API documentation.
To apply your own design language, fork and customize Mdash. It's 100% vanilla HTML, CSS, and JavaScript.
This is the web. Include these files in <head>
and you're all set!
<link href="https://unpkg.com/m-@3.2.0/dist/m-.woff2" rel="preload" as="font" crossorigin>
<link href="https://unpkg.com/m-@3.2.0/dist/m-.css" rel="stylesheet">
<script src="https://unpkg.com/m-@3.2.0/dist/m-.js" defer></script>
Or install via NPM and bundle with your own assets: npm install m-
(built files are located in /dist
)
Then try some Mdash:
<m-alert type="success">Success!</m-alert>
Mdash works with the latest versions of all mainstream browsers.
- Clone the repo (or fork)
cd m-
npm install
gulp watch
cd docs
npm install
npm start
That builds Mdash, watches for changes, and starts the doc site. Start coding!
Custom Element constructors have strict rules about what you can safely do inside them. Please get familiar with Requirements for custom element constructors and reactions.
Some components are custom HTML tags that require no JavaScript. Other components are Custom Elements and for these the styles are still maintained in a separate CSS file.
The TAC CSS methodology is followed.
Some IDEs complain about unknown HTML tags. If that's the case, add this list to make it happy:
m-accordion, m-alert, m-autocomplete, m-badge, m-box, m-breadcrumb, m-col, m-container, m-crumb, m-dot, m-icon, m-loader, m-menu, m-row, m-tab, m-tabs, m-tag, m-vbar