* Improve sidenav performance and expansion list performance * Init dialog * Add initial transition * Add backdrop to md-menu * Create dialog opening from and closing to * Add example os basic and opening from and to * Add todo * Create alias for root element * Fix dialog position * Improve transitions * Fix rules * Fix dialog position on open * Improve docs transitions * Create styles for actions and content * Create confirm dialog preset * Create alert dialog preset * Create prompt dialog preset * Add example with HTML * Improve close transition * Create new documentation template for components * Improve template for mobile * Improve toolbar behaviour * Format code-block and apply clipboard.js * Move clipboard to devDependencies * Show toast after copy * Add function to toggle sidenav and add page title * create avatar documentation with the new template * Improve themes and codes * Remove hover * fix copied toast position * add classes tab * create bottom-bar documentation with the new template * improve bottom bar docs * create button documentation with the new template * create button toggle documentation with the new template * Fix backdrop styles * Fix image color names * create card documentation with the new template * Update debug-lib.js (#106) Fixes webpack missing module error when loading scss * create checkboxes documentation with the new template * Add more alignment options (#109) * Create offset options - md-offset-y and md-offset-x * Add option to align the menu to the trigger * Create better examples * fix bottom-right position * create dialog documentation with the new template * create icon documentation with the new template * fix typo * create input documentation with the new template * create tooltip documentation with the new template * create whiteframe documentation with the new template * Fix unregisterMouseEvent not accepting the element as parameter (#118) * create radio documentation with the new template * create ripple documentation with the new template * create switch documentation with the new template * create subheader documentation with the new template * fix text * improvements over menu * create menu documentation with the new template * create sidenav documentation with the new template * create toolbar documentation with the new template * improve visibility of some code-blocks * create select documentation with the new template * create typography documentation with the new template * create changelog page with the new template * create about page with the new template * create error page with the new template * create introduction page with the new template * create getting started page with the new template * create getting started page with the new template * add codepen examples * create list documentation with the new template * improve docs * add old releases in a folder * optimize build time * remove unused code and rename components * generate old versions * redirect to old documentation versions * [build] 0.4.0 * [build] 0.4.0 * restore dist * get current version from url * [build] 0.4.0 * restore old docs * add correct branch to release script * create table documentation with the new template * add a better explanation of list classes * improve docs * create table documentation with the new template * add code example for tabs * remove directive example of ripple * fix code example of typograph items * general fixes and code cleanup * create themes documentation * start the creation of button "edit on codepen" * group theme text and fix height of codepen example * start creation of tabs * recreate tabs * fix shadow transition inside menus (#141 #129) * add href support for mdBottomBar (#142 #121) * fix table row not watching item #116 #113 (#143) * Improvement/md tooltip (#144) * fix stucked tooltips #103 * remove example * update website url * update libs * fix vue version reference * [build] 0.4.0 |
||
|---|---|---|
| .github | ||
| build | ||
| dist | ||
| docs | ||
| src | ||
| .babelrc | ||
| .editorconfig | ||
| .eslintrc | ||
| .gitignore | ||
| LICENSE | ||
| package.json | ||
| README.md | ||
| versions.json | ||
| yarn.lock | ||
Material Design for Vue.js
Vue Material is lightweight framework built exactly according to the Material Design specs.
It aims to deliver a collection of reusable components and a series of UI Elements to build applications with support to all modern Web Browsers through Vue 2.
Build powerful and well-designed web apps that can can fit on every screen. You can generate and use themes dynamically, use components on demand, take advantage of UI Elements and Components with an ease-to-use API.
Demo and Documentation
Installation
Import Roboto and Material Icons from Google CDN:
<link rel="stylesheet" href="//fonts.googleapis.com/css?family=Roboto:300,400,500,700,400italic">
<link rel="stylesheet" href="//fonts.googleapis.com/icon?family=Material+Icons">
Install Vue Material through npm or yarn
npm install --save vue-material
yarn add vue-material
* Others package managers like JSPM and Bower are not supported yet.
Import or require Vue and Vue Material in your code:
import Vue from 'vue'
import VueMaterial from 'vue-material'
import 'vue-material/dist/vue-material.css'
// OR
var Vue = require('vue')
var VueMaterial = require('vue-material')
require('vue-material/dist/vue-material.css')
Alternativelly you can download and reference the script and the stylesheet in your HTML:
<link rel="stylesheet" href="path/to/vue-material.css">
<script src="path/to/vue-material.js"></script>
Usage
Enable Vue Material in your application using Vue.use(). You can always enable individual components:
Vue.use(VueMaterial)
// OR
Vue.use(VueMaterial.mdCore) //Required to boot vue material
Vue.use(VueMaterial.mdButton)
Vue.use(VueMaterial.mdIcon)
Vue.use(VueMaterial.mdSidenav)
Vue.use(VueMaterial.mdToolbar)
To get Vue Material working properly, you'll need to configure and apply a default theme.
Vue.material.theme.register('default', {
primary: 'cyan',
accent: 'pink'
})
Or you can register multiple themes at once.
Vue.material.theme.registerAll({
default: {
primary: 'cyan',
accent: 'pink'
},
phone: {
primary: 'indigo',
accent: 'pink'
}
})
Apply your theme using v-md-theme directive:
<div v-md-theme="'default'"></div>
<div v-md-theme="'phone'"></div>
Browser Support
Vue Material supports the latest version of all Browsers. This means:
- Google Chrome 50+
- Firefox 48+
- Safari 9+
- Opera 40+
- IE 11
- Edge May work in other browsers but it's untested.
Changelog
Contributing
Please make sure to read the Contributing Guide before making a pull request.
Credits and Thanks
- This library aims to delivery components using almost the same API of Angular Material
- Thanks a lot to elviskang for donating the npm package name!
- Thanks to Evan You for allowing me to use Vue.js Logo.
Internal Dependencies
You don't need to include any other library to work with vue-material. The focus of this project is to have a standalone build with no external dependence, but aiming to deliver the best experience without break the compatibility with the Vue.js core.
License
MIT