Git Product home page Git Product logo

mbitson / mcg Goto Github PK

View Code? Open in Web Editor NEW
624.0 15.0 96.0 880 KB

Material Design Palette/Theme Generator - AngularJS, React, Ember, Vue, Android, Flutter & More!

Home Page: http://mcg.mbitson.com/

License: MIT License

CSS 10.85% JavaScript 63.60% HTML 25.55%
angularjs-material material-design material-palette material-colors angular material-ui react ember-paper angular-2-material-2 tinycolor material-design-lite vue-material angular-material flutter-ui flutter

mcg's Introduction

Material Design Color Generator

GitHub Last Commit GitHub issues GitHub code size in bytes GitHub top language GitHub forks GitHub stars GitHub contributors GitHub license

http://mcg.mbitson.com/

A tool for generating a color palette for Material Design. Supports exporting to and importing from various Material Design frameworks and toolkits.

Screenshot

Material Color Design Palette Website Screenshot

Supported Frameworks & Tools

This palette generation tool supports both exporting and importing palettes for the following frameworks and tools:

  1. Android XML
  2. AngularJS (Material)
  3. AngularJS 2 (Material 2)
  4. Ember Paper
  5. Material Design Lite (SCSS)
  6. Material UI (React)
  7. Material UI Next (React)
  8. Vue.js Material Design
  9. Flutter
  10. MCG Reimport (Proprietary)

When importing code, please ensure that it was code generated with this tool. In many cases, code generated outside of this tool should work as well, however this is unreliable.

Color Generation

By default, we've chosen an Algorithm that seems to do a decent job at picking colors in most situations. However, if you find your palette doesn't look quite how you'd expect, you may change the algorithm that is used. Options are:

  • "Traditional" is the original MCG logic. It is currently the default. It creates a lower contrast palette.
  • "Constantin" is the logic that was developed based on the outline from here. It creates a higher contrast palette.
  • "Buckner" is a slight variation in "Constantin" focusing on the A100 - A700 hues.

MCG Color Algorithm Choice

What's New?

Please see the CHANGELOG.

Bugs & Questions

Should you encounter a bug/problem or have a question about the tool please report it using GitHub's "Issues" feature here.

Planned Enhancements

  • (TOP) Determine which palette is primary, secondary, and so on. Drag and drop palettes.
  • (MED) Remove individual color's hex details and create tooltip styled with all color details. (Hoverintent, populated only once it's opening, includes hex, rgb, cmyk, saturation, brightness. Possibly obtained using tinycolor)
  • (MED) Improve performance by dynamically creating and destroying the color picker button and UI instead of loading a ton of Divs into the DOM for each color on the screen and hiding them.
  • (LOW) Add reset buttons for each individual color in a palette (based on main palette color)
  • (LOW) Create UI for more than 5 palettes (and/or alert user about dangers of using this many palettes)

Contributions

  • fireflight1 - Initial concept, starting code base.
  • tkh44 - Optimizations/fixes
  • simon04 - Contrast detection, bug fixes.
  • Constantin - Color algorithm logic per stack overflow answer here.
  • tabuckner - Slight variation in 'Constantin' focusing on the A100 - A700 values.
  • vstollen - Added generators necessary to support Flutter
  • berryp - Bugfixes on Flutter support

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.