Git Product home page Git Product logo

mdb-webpack-starter's Introduction

MDB Logo

MDB 5 Webpack Starter

Webpack boilerplate for Bootstrap 5 & Material Design 2.0 UI Kit

>> Support MDB 5 with a STAR

>> MDB 5 Demo

Downloads License YouTube Video Views


⚠️ The use of this Starter is at your own risk and assumes basic knowledge of Webpack, JavaScript and CSS preprocessors. We recommend creating custom versions of MDB UI KIT and themes only for advanced developers.


Installation

npm install

Pro Essential installation

npm install git+https://oauth2:[email protected]/mdb/standard/mdb-ui-kit-pro-essential

Pro Advanced installation

npm install git+https://oauth2:[email protected]/mdb/standard/mdb-ui-kit-pro-advanced

Dev Server

npm start

Build

npm run build

Features:

Files structure:

.
├── src
│   ├── img/
│   ├── js/
│   ├── scss/
│   ├── mdb/
│   └── index.html
├── webpack
│   ├── webpack.common.js
│   ├── webpack.config.dev.js
│   ├── webpack.config.prod.js
│   └── mdb/
│       ├── webpack.common.mdb.js
│       ├── webpack.config.mdb.dev.js
│       └── webpack.config.mdb.prod.js
└── dist/




MDB UI KIT

Importing JS modules

You can import the entire library or just individual modules:

import * as mdb from 'mdb-ui-kit'; // lib
import { Input } from 'mdb-ui-kit'; // module
import { Input as CustomInput } from 'mdb-ui-kit'; // module with custom name

Importing CSS file

To import MDB stylesheet please use the following syntax:

@import '~mdb-ui-kit/css/mdb.min.css';




CUSTOM VERSION OF MDB UI KIT

It is possible to prepare a custom version of MDB UI KIT. It can be useful when the project uses only several modules of our library and you want to reduce the size of the compiled files. To achieve this, follow the steps:

npm install

Pro Essential installation

npm install git+https://oauth2:[email protected]/mdb/standard/mdb-ui-kit-pro-essential

Pro Advanced installation

npm install git+https://oauth2:[email protected]/mdb/standard/mdb-ui-kit-pro-advanced
npm run getMDBsrc

Importing JS components

Copy the content from mdb/js/mdb.free.js or mdb/js/mdb.pro.js to src/js/index.js file. Pick only the components you need and update path to the mdb dir. Here's an example:

import Carousel from '../../mdb/js/free/carousel';

export { Carousel };

Pro Advanced paths

For the Pro Advanced package the /mdb folder will contain two subfolders: /mdb and /plugins, so for our needs the paths to the scss and js files will have to contain duplicated mdb/ text. Here's an example for a carousel component:

import Carousel from '../../mdb/mdb/js/free/carousel';

Some components may require additional dependencies to be installed. Webpack should report this after starting a devServer.

Importing SCSS files

Same as with js files, copy the content from mdb/scss/mdb.free.scss or mdb/scss/mdb.pro.scss to src/scss/index.scss. Remove the lines with the import of modules that you will not use and update the paths to point the mdb dir.

Keep in mind that many scss files are related to each other. For example, a modal will need files for buttons, ripple, modal, close and transtions to work properly. We recommend that you only delete the files described by comments BOOTSTRAP COMPONENTS and MDB COMPONENTS.

Example path for carousel file:

@import '../../mdb/scss/free/carousel';

Pro Advanced path

@import '../../mdb/mdb/scss/free/carousel';

Configuration

Webpack config for MDB development is located in /webpack/mdb/ directory and index.html file is placed in /src/mdb/ directory.

Dev Server

npm run startMDB

Build

npm run buildMDB




CUSTOM THEME

Webpack Starter allows pro users to prepare a personalized theme for all UI KIT components.

Installation

npm install

Pro Essential installation

npm install git+https://oauth2:[email protected]/mdb/standard/mdb-ui-kit-pro-essential

Pro Advanced installation

npm install git+https://oauth2:[email protected]/mdb/standard/mdb-ui-kit-pro-advanced

SCSS config

Creating a new theme requires that you define primary and secondary colors for your application. We prepared functions and mixins that will help you to create a ready to use theme using these colors. Here's an example code:

@import '~mdb-ui-kit/src/scss/mdb.pro.scss';

$my-theme-primary: #9c27b0; // theme primary color, change this value to customize theme
$my-theme-secondary: #69f0ae; // theme secondary color, change this value to customize theme

$my-theme: mdb-light-theme($my-theme-primary, $my-theme-secondary); // create the new theme using primary and secondary colors

// include theme styles
@include mdb-theme($my-theme);

mdb-webpack-starter's People

Contributors

filipkappa avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.