Bootstrap4 Material Design Components for Vue.js

Overview

Vue MDBootstrap

NPM Release Release Downloads License

Vue MDBootstrap is a collection of VueJs components and built according to the Google Material Design specs. They can be used to built Single Page Application (SPA) by using module bundler or built common web page by using the resources from the CDN.

These components were build in the spirit of VueJs framework, and utilize Bootstrap 4 css framework. Long ago, I use them on all my VueJs projects. Now, I decide to publish these components and hope it will be useful to anyone who wants to use it as an alternative of many Vue components out there.

How To Use

Using Module Bundlers

If you are building Single Page Application and using module bundlers like Webpack, Vue Cli or Symfony Encore, you may prefer to directly include the package into your project. To get started, use yarn or npm to get the latest version of Vue.js, and Vue MDBootstrap.

# With npm
npm install vue vue-mdbootstrap --save
npm install [email protected] --save-dev
npm install [email protected] --save-dev

# With yarn
yarn add vue vue-mdbootstrap
yarn add [email protected] --dev
yarn add [email protected] --dev

Then, register Vue MDBootstrap in your app entry point.

// main.js
import Vue from "vue";
import VueMdb, { AxiosPlugin } from "vue-mdbootstrap";

// Default requirement
Vue.use(VueMdb);
// Optionally, install the MDBootstrap Axios plugin
// only requires if using BsGrid, BsTreeGrid, BsModel, BsStore, BsTreeStore or needs to perform HTTP Request
Vue.use(AxiosPlugin);

Now, you are ready to go. You can use any of Vue MDBootstrap components without using import statement again. Please note, these components still need css from Bootstrap4 css framework.

Using CDN

If you aren't building Single Page Application and not using module bundlers, and your goals is building common web page to display on the web browser, grab the supplied css and js from the dist folder. Or you can get the latest version of the resource from unpkg.com/vue-mdbootstrap and use the js and css files on your html <head> section on the page to get started.

Code below is an example how to load and initialize the components.

<link rel="stylesheet" href="https://unpkg.com/[email protected]/dist/css/bootstrap.min.css" crossorigin="anonymous">
<link rel="stylesheet" href="https://unpkg.com/vue-mdbootstrap/dist/vue-mdb.min.css" crossorigin="anonymous">
<script src="https://unpkg.com/[email protected]/dist/vue.min.js" crossorigin="anonymous"></script>
<script src="https://unpkg.com/vue-mdbootstrap/dist/vue-mdb.min.js" crossorigin="anonymous"></script>

If you are using BsGrid, BsTreeGrid, BsModel, BsStore, BsTreeStore and/or need to perform HTTP Request, you can use example code below in your javascript to initialize MDBootstrap Axios plugin.

Vue.use(VueMdb.AxiosPlugin, {baseURL: "http://localhost/<api-url>"});

Now, you can use any of Vue MDBootstrap components in your html page.

Notes:

Demos

You can clone the demos from here to see it in action.

Start coding

Now you have implemented Vue MDBootstrap to your project, and it’s time to write your code. Please refer to each component’s documentation to learn how to use them.

Browser Support

Modern browsers and Internet Explorer 10+.

Comments
  • CORS issue: Mock data unreachable from outside fajarconsultant.com

    CORS issue: Mock data unreachable from outside fajarconsultant.com

    Hi Ahmad,

    I was trying the Grid component > Overview example from your website in my local application and wasn't able to load the data from https://vue-mdbootstrap.fajarconsultant.com/data/deserts.json. It looks like a CORS issue, your website is a bit too strict so it's impossible to load the data from any other domain than fajarconsultant.com.

    NB: It also breaks your examples on jsfiddle.net.

    opened by jbrokamp 1
  • Bump elliptic from 6.5.2 to 6.5.3

    Bump elliptic from 6.5.2 to 6.5.3

    Bumps elliptic from 6.5.2 to 6.5.3.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 1
  • Bump lodash from 4.17.15 to 4.17.19

    Bump lodash from 4.17.15 to 4.17.19

    Bumps lodash from 4.17.15 to 4.17.19.

    Release notes

    Sourced from lodash's releases.

    4.17.16

    Commits
    Maintainer changes

    This version was pushed to npm by mathias, a new releaser for lodash since your current version.


    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 1
  • Missing dependency sass-loader

    Missing dependency sass-loader

    Hi Ahmad,

    After adding this this package to my project the compiler complained that I was missing the package sass-loader and had to install it myself, because it was required for BsTooltipContent.vue.

    I'm on vue 2.6.12 (latest) with node-sass 5.0.0 (latest) and also installed sass-loader10.1.1 (latest 10) because 11.0.1 caused compiler errors. Now the project is fine.

    If you can reproduce this, you can add it to the readme, the same you did for node-sass?

    documentation 
    opened by jbrokamp 0
  • Grid header and content height difference on mobile

    Grid header and content height difference on mobile

    On mobile the grid header and the grid content has different height.

    I fixed it making the th and td tags 3em height, but I guess it's not the best practice.

    Thanks for the collection, loved it! imagen_2021-03-28_162529

    opened by ZarZaKos 0
Releases(v1.2.1)
  • v1.2.1(Jun 30, 2021)

    Change Logs:

    Bug Fixes & Improvement

    • Upgrade package builder to webpack v5.x
    • Improve build scripts
    • BsNotification: fix component registration
    • BsChip, BsChipField, BsCombobox, BsNumericField: fix missing component import
    • BsRadio: fix property mutation
    Source code(tar.gz)
    Source code(zip)
  • v1.2.0(Jun 29, 2021)

    Change Logs:

    New Features

    • New components: BsNumericField, BsChip, BsChipGroup, BsChipField
    • New icons: AddCircle, AddCircleOutline, CheckCircle, CheckCircleOutline, Checked, Error, ErrorOutline, Help, HelpCenter, HelpOutline, Info, Remove, RemoveCircle, RemoveCircleOutline, Report, ReportOutline, Shield, Verified, VerifiedUser, Warning, WarningOutline, InvertColors
    • BsCombobox: add properties chip-enabled, chip-color, chip-labeled and chip-outlined
    • BsListNavItem: add properties badge, and badge-variant
    • BsAlert: add properties icon-flip, icon-outlined, icon-pulse, icon-rotation, icon-spin, icon-type, and solid-fill
    • BsTabs: add properties active-class

    Bug Fixes & Improvement

    • Improve Helper class: add method roundNumber
    • Improve Tabs component: customize inactive TabItem via tab-class property and active TabItem via active-class property for tabs variant: pills, modern, and material.
    • Improve BsIcon template rendering
    • Improve BsAlert: enable using internal icon via icon property
    • BsNumericField: prevent value changing with UP/DOWN arrows when field state is readonly or disabled and fix tab key
    • BsNumericField, BsTextField, BsTextArea: fix css when field state is readonly or disabled
    • BsDateTimeField: disabling focus when field state is disabled
    • Expose FontAwesomeLayers and FontAwesomeLayersText components
    Source code(tar.gz)
    Source code(zip)
  • v1.1.4(Jan 31, 2021)

    Change Logs:

    New Features

    • BsMaskLoader: add properties overlay-color, overlay-opacity, spinner-color, spinner-thickness, and spinner-type

    Bug Fixes & Improvement

    • BsAppbarItems: remove font-size scss styles
    • BsMenu: improve keyboard navigation using arrow-down and arrow-up
    • BsPopover: fix space property did not apply correctly when placement property sets to top, top-left or top-right
    • Refactor popover transition animation to scale
    Source code(tar.gz)
    Source code(zip)
  • v1.1.3(Jan 5, 2021)

    Change Logs:

    • BsGrid: fix side effect on methods sort, setPageSize, _fetchData, and update scss styles
    • BsSearchField: remove property can-close and fix BsPopover show/hide procedure when search-options is enabled
    • BsTreegridCell: fix warning when icon is null
    • BsCheckboxGroup, BsRadioGroup: fix multi-column items when columns property is set to 1
    • BsButtonToggleField: fix non-persistent help text and update scss styles
    • AbstractStore: add methods setPageSize and setSorters
    • BsStore: fix method append didn't send data to remote service
    • BsModel: constructor improvement
    Source code(tar.gz)
    Source code(zip)
  • v1.1.1(Dec 21, 2020)

    Change Logs:

    • Touch directive did not expose correctly
    • BsCard: add DOM event listener
    • BsNotification: change default variant and update css styles
    • BsTextField, BsTextArea, BsRadioGroup, BsDateTimeField, BsCombobox, BsCheckboxGroup: bug fix when form reset
    Source code(tar.gz)
    Source code(zip)
  • v1.1.0(Dec 17, 2020)

    Change Log:

    New Features

    • New components: BsExpandTransition, BsCardMedia, BsIconToggle, BsListNav, BsListNavItem
    • BsAvatar: add properties icon-flip, icon-spin and icon-pulse
    • BsButton: add properties pill and rounded, emit events input to update active property
    • BsCard: add properties img-bottom-alt, img-bottom-src, img-top-alt, img-top-src
    • BsCheckbox: add property readonly
    • BsCheckboxGroup: add property readonly
    • BsSwitch: add property readonly
    • BsIcon: add properties flip, pulse, rotation, spin, and add new icons: delete-outline
    • BsListTile: add properties ripple-off and navigable
    • BsListTileAction: add center property
    • BsListTileLeading: add properties icon, icon-flip, icon-rotation, icon-spin and icon-pulse
    • BsListView: add properties single-expand, space-around, and active-item-bordered
    • BsTextArea: add properties append-icon-outer, prepend-icon-outer, and filled
    • BsTextField: add properties append-icon-outer, prepend-icon-outer, and filled
    • BsCombobox: add properties append-icon-outer, prepend-icon-outer, and filled
    • BsDateTimeField: add properties append-icon-outer, prepend-icon-outer, and filled
    • BsGridColumn: add properties order, cell-data
    • BsModal: add properties body-class, footer-class, and header-class
    • BsLightbox: add properties image-class, and image-styles
    • Add css classes: font-weight-bold, font-weight-bolder, font-weight-boldest

    Bug Fixes & Improvement

    • BsAlert: improve css alert-variant
    • BsMaskLoader: incorrect z-index
    • BsButton: rename property button to type and ripple to ripple-off
    • BsIcon: remove css class d-flex and align-items-center
    • BsImageHolder: computed cssClass, height and width improvement
    • BsListView: beforeDestroy improvement, add functionaddItem(), addChild(), findActive(), removeItem(), removeChild()
    • BsListTile: improve when to generate <a> element or <div> element and update component scss
    • BsProgress: change property type default value to 'bar'
    • BsSideDrawer: computed inline style improvement
    • BsCheckbox, BsSwitch: improve css classes
    • BsCombobox: improve html template and css classes
    • BsTextArea: improve html template and css classes
    • BsTextField: improve html template and css classes
    • BsDateTimeField: improve html template and css classes
    • BsGrid: improve html template and css classes, rename property borderless to bordered
    • BsModal: rename slot title to header, and rename property fullscreen to full-page
    • BsTabLabel: fix icon padding
    Source code(tar.gz)
    Source code(zip)
  • v1.0.4(Aug 10, 2020)

    Change Log:

    • Improvement and bug fixes on UI components: BsMaskLoader, BsAppbar, BsButtonToggle, BsContent, BsCheckboxGroup, BsRadioGroup, BsGrid, BsTreegrid, BsMenu, BsLightbox, BsModal, BsPagination, BsDatePicker
    • Improvement and bug fixes on data models: AbstractStore, BsStore, BsModel
    Source code(tar.gz)
    Source code(zip)
  • v1.0.3(May 19, 2020)

  • v1.0.2(May 19, 2020)

    Change Log:

    • BsGrid: fix localPaging, localSorting, and localFiltering
    • BsPagination: fix combobox paging
    • BsArrayStore, BsStore: enhance LocalFilter to match BsGrid filterable spec
    Source code(tar.gz)
    Source code(zip)
Material design for Vue.js

Material Design for Vue.js Vue Material is Simple, lightweight and built exactly according to the Google Material Design specs Build well-designed app

Vue Material 9.7k Jan 5, 2023
:diamonds: A modular and customizable UI library based on Material Design and Vue

BalmUI Next Generation Material UI for Vue.js Introduction BalmUI is a modular and customizable Material Design UI library for Vue.js. ?? NOW, balm-ui

BalmJS 428 Jan 4, 2023
Vue Bootstrap with Material Design - Powerful and free UI KIT

Vue Bootstrap with Material Design Based on the latest Bootstrap 4 and Vue. 400+ material UI elemens, 600+ material icons, 74 CSS animations, SASS fil

MDBootstrap 902 Jan 4, 2023
Vue 3 & Bootstrap 5 & Material Design 2.0 UI KIT

Vue 3 & Bootstrap 5 & Material Design 2.0 UI KIT

MDBootstrap 899 Dec 29, 2022
Material Design UI library for Vuejs 2.0

Muse-UI Material Design UI library for Vuejs 2.0 Installation Muse-UI is available as an npm package npm install muse-ui -S yarn add muse-ui Usage imp

Muse UI 8.3k Dec 27, 2022
Build material design interfaces in record time... without stress for devs... 🍺💛

Beercss Build material design interfaces in record time... ...without stress for devs ?? ?? Cheers, www.beercss.com Why? It's based on latest material

beercss 359 Jan 3, 2023
Vue2 material design icons with easy access to icons names and types

vue-material-icons Vue2 material design icons with easy access to icons names and types (all available in IDE hints). Hints were tested on IntelliJ ID

Dominik Betka 0 May 11, 2022
🧬Equal UI is a Vue 3 components library with 30+ components based on TypeScript and personal design system.

??Equal UI is a Vue 3 components library with 30+ components based on TypeScript and personal design system.

Yan Savinov 873 Jan 3, 2023
Vue wrapper arround Material Components for the Web

Material Components for Vue Vue components (Vue 3.0) for Material Web Components which uses the Using Foundations and Adapters integration technique.

null 102 Dec 20, 2022
📕 Material Components for @vuejs

@lbzui/vue Material Components for Vue.js @lbzui/vue is now available in BETA, but you can read in more depth on API documentation and documentation w

LBZUI 40 Jul 10, 2022
Business React components for Bootstrap and Material-UI

DevExtreme Reactive · DevExtreme Reactive is a set of business React components that deeply integrate with Bootstrap and Material-UI libraries. Common

Developer Express Inc. 1.9k Dec 25, 2022
🌈 An enterprise-class UI components based on Ant Design and Vue. 🐜

Ant Design Vue An enterprise-class UI components based on Ant Design and Vue. English | 简体中文 Features An enterprise-class UI design system for desktop

vueComponent 17.6k Jan 4, 2023
Vue Components inspired by Microsoft's Fluent Design System

Vue Components inspired by Microsoft's Fluent Design System

null 74 Dec 14, 2022
🐉 Material Component Framework for Vue

Supporting Vuetify Vuetify is a MIT licensed project that is developed and maintained full-time by John Leider and Heather Leider; with support from t

vuetify 36.2k Dec 30, 2022
The material-ripple directive for Vue that actually works

v-wave The material-ripple directive for Vue that actually works Support for both Vue 2 and Vue 3! Why did I make this? Because every ripple-plugin I'

Justin Taddei 167 Dec 29, 2022
Vue.js components implementation of Fundamental Library Styles guidelines. The library is aiming to provide a Vue.js implementation of the components designed in Fundamental Library Styles.

Fundamental Vue Description The fundamental-vue library is a set of Vue.js components built using Fundamental Library Styles. Fundamental Library for

SAP 188 Jan 1, 2023
Vue implementation of the Carbon Design System

carbon-components-vue Vue implementation of the Carbon Design System A collection of Carbon Components implemented using Vue.js. Carbon Vue library -

Carbon Design System 511 Dec 29, 2022
A Vue.js design-system for Web.

A Vue.js Design System for Web. Responsive, user-friendly and lightweight library helping us build great products for our customers. This library for

Qvant 229 Dec 27, 2022