Skip to content
Material design for Aurelia
JavaScript
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
dist
src
LICENSE
README.md
config.js
gulpfile.js
package.json

README.md

aurelia-material

Aurelia wrapper for Material Design Lite.

Material Design Lite has been designed for static html sites. To use it on dynamic ones, we have to register explictly new DOM elements (see MDL)

Aurelia Material will do that for you transparently while keeping MDL flexibility.

See online Demo

Principles

We created the CustomAttribute mdl in charge of the registration of dynamic elements (all elements after index.html will be associated dynamically to the DOM with Aurelia)

So instead of writing:

<button class="mdl-button mdl-js-button mdl-button--fab mdl-button--colored">
  <i class="material-icons">add</i>
</button>

You will write in your views:

<button mdl="button" class="mdl-button--fab mdl-button--colored">
  <i class="material-icons">add</i>
</button>

And that's all...

mdl values are :

[ 'button',
  'textfield',
  'layout',
  'menu',
  'data-table',
  'tabs',
  'slider',
  'tooltip',
  'progress',
  'spinner',
  'badge',
  'switch',
  'radio',
  'icon-toggle',
  'checkbox',
  'snackbar' ]

Some MDL elements are not in the list because we don't have to register them, so we can use them as it.

Install

  1. In your project install the plugin via jspm with following command
  $ jspm install github:redpelicans/aurelia-material
  1. Make sure you use manual bootstrapping. In order to do so open your index.html and locate the element with the attribute aurelia-app:
<body aurelia-app="main">
...
  1. Update main.js in your src folder with following content:
export function configure(aurelia) {
  aurelia.use
    .standardConfiguration()
    .developmentLogging()
    // Install the plugin
    .plugin('redpelicans/aurelia-material');

  aurelia.start().then(a => a.setRoot());
}
  1. Include material design css in your index.html
    <link rel="stylesheet" href="https://storage.googleapis.com/code.getmdl.io/1.0.0/material.indigo-pink.min.css">
  1. Use wrapped MDL components in your hml views as explained below.

See online Demo

You can’t perform that action at this time.