Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/aforemny/material-components-web-elm

Material Components for Elm
https://github.com/aforemny/material-components-web-elm

elm material-components material-design

Last synced: 1 day ago
JSON representation

Material Components for Elm

Awesome Lists containing this project

README

        

![build](https://github.com/aforemny/material-components-web-elm/workflows/build/badge.svg)

# Material Components for Elm

A [Material Design](https://material.io/design) framework.

This library is based on [Material Components for the
web](https://github.com/material-components/material-components-web) (MDC Web).

## Important links

- Getting Started Guide (TODO)
- [Demo](https://aforemny.github.io/material-components-web-elm)

## Quick start

This package relies upon JavaScript and CSS that need to be included in your
project separately. As a result, this library will _not_ work with e.g. `elm
reactor`. Instead you will need to use either a HTML file or a bundler, such as
webpack.

### Using HTML

You should [compile your Elm program to
JavaScript](https://guide.elm-lang.org/install/elm.html#elm-make) and include
it in a custom HTML document. From that HTML document, you have to include the
following assets to use this library.

Please make sure that the last two assets match this library's version (ie.
9.1.0) exactly.

```html

```

Refer to the [simple counter
example](https://github.com/aforemny/material-components-web-elm/blob/master/examples/simple-counter)
for a minimal starting point, specifically to the files
[`src/Main.elm`](https://github.com/aforemny/material-components-web-elm/blob/master/examples/simple-counter/src/Main.elm)
and
[`page.html`](https://github.com/aforemny/material-components-web-elm/blob/master/examples/simple-counter/page.html).

### Using a bundler

Install the JavaScript and CSS assets via npm:

```sh
$ npm install --save [email protected]
```

Then in your `index.js` add the following imports:

```js
require("material-components-web-elm/dist/material-components-web-elm.js");
require("material-components-web-elm/dist/material-components-web-elm.css");
```

## Contributions

Please [share your
experience](https://github.com/aforemny/material-components-web-elm/issues)
using this library! Use GitHub to [report bugs or ask
questions](https://github.com/aforemny/material-components-web-elm/issues),
too.