solution • Angular Material Design - martindubenet/wed-dev-design GitHub Wiki
There is NO official (easy) method of installing « Material Icons » as a system font on my workstation.
So far the only method I found is relying the the github project « Material Icons Cheatsheet » to allow me to use Material Icons font-face within Adobe XD, Axure RP, Sketch, Illustrator etc...
- « Color Tool » public webapp to test colors,
- « Material Icons Cheatsheet » a webapp to use icon as font on my OS.
- « Mat Theme Generator » private webapp to generate a custom theme.
This is a library by itself. It has it's own set of components derived from Material Design. But it does NOT include everything from the mother library.
-
mat-autocompleteis a normal text input enhanced by a panel of suggested options. -
matBadgeare small status descriptors for UI elements. -
bottomSheetcan be used to open Material Design panels to the bottom of the screen. -
mat-buttonare native<button>or<a>elements enhanced with Material Design styling and ink ripples. -
mat-button-toggleare on/off toggles with the appearance of a button. These toggles can be configured to behave as either radio-buttons or checkboxes. -
mat-cardis a content container for text, photos, and actions in the context of a single subject. -
mat-checkboxsame as native<input type="checkbox">with enhanced UI. -
mat-chipdisplays a list of values as individual, keyboard accessible, chips. -
mat-datepickerallows users to enter a date either through text input, or by choosing a date from the calendar. It is made up of several components, directives and the date implementation module that work together. -
matDialogcan be used to open modal dialogs with Material Design styling and animations. -
mat-dividerallows for Material styling of a line separator with various orientation options. -
mat-expansion-panelprovides an expandable details-summary view. -
mat-form-fieldis a component used to wrap several Angular Material components and apply common text field styles such as the underline, floating label, and hint messages. -
mat-grid-listis a two-dimensional list view that arranges cells into grid-based layout. -
mat-iconmakes it easier to use vector-based icons in your app. This directive supports both (Google or any) icon fonts and<svg>icons, but not bitmap (pixels) based formats. -
matInputis a directive that allows native<input>and<textarea>elements to work with<mat-form-field>. -
mat-listis a container component that wraps and formats a series of line items. As the base list component, it provides Material Design styling, but no behavior of its own. -
mat-menuis a floating panel containing list of options. -
mat-paginatorprovides navigation for paged information, typically used with a table. -
mat-progress-baris a horizontal progress-bar for indicating progress and activity. -
mat-progress-spinnerandmat-spinnerare a circular indicators of progress and activity. -
mat-radio-buttonsame as native<input type="radio">with enhanced UI. -
matRippledefines an area in which a ripple animation is applied based on a user event. -
mat-selectis a form control for selecting a value from a set of options, similar to the native<select>element. -
mat-sidenavand/ormat-drawercomponents are designed to add side content to a fullscreen app. -
mat-slide-toggleis an on/off control that can be toggled via clicking event. -
mat-sliderallows for the selection of a value from a range via mouse, touch, or keyboard, similar to<input type="range">. -
snackBar, oropenSnackBar(), is a service for displaying snack-bar notifications. -
matSortandmat-sort-headerare used, respectively, to add sorting state and display to<table>data-grid. -
mat-horizontal-stepperandmat-vertical-stepperAngular Material’s stepper provides a wizard-like workflow by dividing content into logical steps. -
mat-tableprovides a Material Design styled<table>data-grid that can be used to display rows of data. -
mat-tabwithinmat-tab-grouporganize content into separate views where only one view can be visible at a time. -
mat-toolbaris a container for headers, titles, or actions. -
matTooltipprovides a text label that is displayed when the user hovers over or longpresses an element.
-
style.min.cssis a compiled and minified CSS file generated fromstyle.scss,-
style.scsscontains all the imports for the solution :@import "styles/_imports.scss"-
styles/_imports.scsscontains:@import "fonts.googleapi.com";- required
~node_modules, @import "styles/app/_*.scss";@import "styles/themes/_*.scss";@import "styles/layout/_*.scss";@import "styles/components/_*.scss";
-
-
| context | shorthand | replaces |
|---|---|---|
| Loading node_modules within Sass | @import "~any-module/… |
@import "../../node_modules/any-module/… |
📁 Api/
📁 Scripts/
📁 Terraform/
📂 Web ↴
📁 node_modules/
📂 src ↴
📂 app ↴
📂 features ↴
📂 template01 ↴
📂 pageA_example ↴
📄 pageA.template01.html
📄 pageA.template01.scss
📄 pageA.template01.ts
📂 pageB ↴
📄 pageB.template01.html
📄 pageB.template01.scss
📄 pageB.template01.ts
📂 template02/ 🗁 pageX ↴
📄 pageX.template02.html
📄 pageX.template02.scss
📄 pageX.template02.ts
📂 shared ↴
📂 components ↴
📂 helper ↴
📂 ellipsis-title ↴
📄 ellipsis-title.directive.ts
📂 assets ↴
📁 config/
📁 data/
📂 fonts ↴
📁 FivoSans/
📁 icons /
📂 images ↴
🖼 pixel.png
📂 theme ↴
🖼 background-texture__day.jpg
🖼 background-texture__night.jpg
📂 logo ↴
🖼 app.logo.svg
🖼 app.icon.svg
🖼 company.logo.svg
🖼 company.icon.svg
🖼 microsoft.icon.svg
📂 locale ↴
📂 app ↴
📄 en.json
📄 fr.json
📂 template_example ↴
📄 en.json
📄 fr.json
📂 styles ↴
📂 app ↴
📄 _abstracts.scss
📄 _colors.default.scss
📄 _colors.brand-foo.scss
📄 _mixins.scss
📄 _variables.scss
📂 components ↴
📄 _alerts.scss
📄 _cards.scss
📄 _info-tooltip.scss
📄 _modals.scss
📂 layout ↴
📄 _master.scss
📄 _utils.scss
📂 themes ↴
📄 _default.scss
📄 _brand-foo.scss
📄 _imports.scss
📂 tests/
📂 data/ 📄 spreadsheets.ts
📁 mocks/
🖼 favicon.ico
📄 index.html
📄 main.ts
📄 polyfills.ts
📄 styles.scss
📄 test.ts
📄 .browserslistrc
📄 .dockerignore
📄 .editorconfig
📄 .eslintrc.json
📄 .gitignore
📄 .prettierignore
📄 .prettierrc
📄 angular.json
📄 chrome.json
📄 karma.config.js
📄 package-lock.json
📄 package.json
📄 README.md
📄 tsconfig.app.json
📄 tsconfig.json
📄 tsconfig.spec.json
In Angular Material, a theme is created by composing multiple palettes. In particular, a theme consists of:
- A primary palette: colors most widely used across all screens and components.
- An accent palette: colors used for the floating action button and interactive elements.
- A warn palette: colors used to convey error state.
- A foreground palette: colors for text and icons.
- A background palette: colors used for element backgrounds.
References: https://zoaibkhan.com/blog/angular-material-dark-mode-in-3-steps/
- Add a custom Angular-Material theme