Never Play Matchmaker

    TypeScript icon, indicating that this package has built-in type declarations

    12.0.0 • Public • Published

    Material Community Components

    Angular Material components that are not implemented in official package.

    npm version Travis CI Coverage Status patreon

    The idea of the Material Community Components is to provide components that aren't available in the Angular Material2 yet.

    All the components are created using Angular, Material 2 and CDK. Since version 7.1.0 only Angular 9+ is supported.

    The color-picker component has an additional peer-dependency to @thebespokepixel/es-tinycolor to help with color calculations.

    Check out our documentation & live demo


    All the components have the prefix mcc followed by the package name.

    Component Package Screenshot
    Color Picker mcc-color-picker alt text
    Scrollspy mcc-scrollspy alt text
    Speed Dial mcc-speed-dial alt text
    Timer Picker mcc-timer-picker alt text

    If you miss any component, please follow the CONTRIBUTION GUIDELINE to open an issue or file your idea here.


    step: 1

    We use some components from Angular Material. To be able to use this components, you have to install the @angular/animations. If you follow all the steps in Material Guide, you already have this step done.

        npm install --save @angular/animations

    Note: @angular/animations uses the WebAnimation API that isn't supported by all browsers yet. If you want to support Material component animations in these browsers, you'll have to include a polyfill.

    import {BrowserAnimationsModule} from '@angular/platform-browser/animations';
      imports: [BrowserAnimationsModule],
    export class PizzaPartyAppModule { }

    If you don't want to add another dependency to your project, you can use the NoopAnimationsModule.

    import {NoopAnimationsModule} from '@angular/platform-browser/animations';
      imports: [NoopAnimationsModule],
    export class PizzaPartyAppModule { }

    step: 2

    Install material community components package:

        npm install material-community-components


      yarn add material-community-components


    To use the same theme of Angular Material add the following code to your style.scss.

    @use '~@angular/material' as mat;
    @use '~material-community-components/theming' as mcc;
    @include mat.core();
    // Define the palettes for your theme using the Material Design palettes available in palette.scss
    // (imported above). For each palette, you can optionally specify a default, lighter, and darker
    // hue. Available color palettes:
    $demo-primary: mat.define-palette(mat.$green-palette);
    $demo-accent: mat.define-palette(mat.$pink-palette, A200, A100, A400);
    // The warn palette is optional (defaults to red).
    $demo-warn: mat.define-palette(mat.$red-palette);
    // Create the theme object (a Sass map containing all of the palettes).
    $demo-theme: mat.define-light-theme($demo-primary, $demo-accent, $demo-warn);
    // build angular material theme
    @include mat.all-component-themes($demo-theme);
    // pass angular material theme to material community components
    @include mcc.mcc-theme($demo-theme); 

    Right now only timer-picker and speed-dial do support the theme (see ISSUE-172).

    Upgrading from 7.x.x

    Since version 9.0.0 the lib only provides secondary entry-points for import. To migrate change your imports like that:


    import { MccColorPickerModule} from 'material-community-components';
    import { MccTimerPickerModule} from 'material-community-components';
    import { MccSpeedDialModule} from 'material-community-components';
    import { MccScrollspyModule} from 'material-community-components';


    import { MccColorPickerModule} from 'material-community-components/color-picker';
    import { MccTimerPickerModule} from 'material-community-components/timer-picker';
    import { MccSpeedDialModule} from 'material-community-components/speed-dial';
    import { MccScrollspyModule} from 'material-community-components/scrollspy';

    How to use

    For more examples, you can see our demo folder or read the documentation


    The MIT License (MIT) Copyright (c) 2018


    alt text


    npm i material-community-components

    DownloadsWeekly Downloads






    Unpacked Size

    1.36 MB

    Total Files


    Last publish


    • hayko