Giter Site home page Giter Site logo

petershaggynoble / mdi-sandbox Goto Github PK

View Code? Open in Web Editor NEW
41.0 6.0 2.0 63.71 MB

A jacked up cheatsheet and additional tools for https://materialdesignicons.com/

Home Page: https://petershaggynoble.github.io/MDI-Sandbox/

HTML 32.39% CSS 4.36% JavaScript 7.17% PHP 56.08%
material-design ecmascript6 icons material-design-icons javascript svg css localstorage icon-library

mdi-sandbox's Introduction

Material Design Icons Sandbox

Important Notes

  • This is a side-project to the main Material Design Icons project. To request a new icon, suggest an alias or make a contribution to the icon pack, please create an issue in the main repository.
  • One of the main purposes of this Sandbox is for me to play around with ECMAScript 6+ features I don't normally get to work with. As such I can only guarantee that the website will work in the latest version of Google Chrome.

Features & Tools

Icon Library

The main section of this project; a jacked up "cheatsheet" for MDI. Features include:

  • Build your own library of icons.
  • Upload custom icons to your library.
  • Filter icons by keywords, categories and/or contributors.
  • Download your library, filtered icons or individual icons in a variety of formats.
  • Copy icon info such as SVG markup, path data and codepoints directly to your clipboard.
  • Edit icons and download them in a variety of formats.
  • See which icons were added, updated, renamed or removed in the latest release.
  • See which icons will be available in the next release.
  • Access icons which have since been removed from the MDI library.

Preview Generator

Create customised icon preview images which can be copied & pasted directly into GitHub issues (or anywhere else) at petershaggynoble.github.io/MDI-Sandbox/preview/.

Automated Preview Generator

To save you some work, there's also an automated preview generator available at mdi.houseofdesign.ie/tools/preview/. Use the icon querystring parameter to provide an icon name from the main library, Material Icons Extended, the other Google icons or the stock Google icons and a preview will be generated that you can link to directly. You can also use the optional action parameter to provide the name of an icon from the main library to be shown in the bottom right corner.

Example: /?icon=vector-square&action=link

Alternatively, instead of using the icon parameter to provide the name of an existing icon, you can provide a custom path and name using the path & name parameters.

Example: /?name=vector-square&action=download&path=M2,2...Z

If necessary, you can override the auto-detected preview type using the type parameter. The values this parameter can accept can be found in the table below along with their corresponding colours & labels.

Example: /?name=vector-square&action=download&type=final&path=M2,2...Z

Value Colour Label Text
standard #616161 Grey
google #388e3c Green Google Icon Not yet available
wip #1976d2 Blue Work in Progress Unreleased Draft
final #303f9f Indigo Final Draft Not yet available
example #e64a19 Orange Example Not for release
simple #111111 Black Simple Icons Not available in MDI
removed #5d4037 Brown Legacy Icon No longer available
rejected #d32f2f Red Rejected Won't be added

Additional Google Icons

A preview of the extra icons in Google's "Material Icons Extended" set is available at petershaggynoble.github.io/MDI-Sandbox/extended/ and their GMP & AOG icons at petershaggynoble.github.io/MDI-Sandbox/other/. Icons can be downloaded but note that the transform attribute is used on the path elements to scale them down to 24 pixels.

Issue Tracker

The issue tracker can be used to view the status of all Icon Request issues, sorted by number of reactions with the ability to filter requests for stock Google icons, home automation icons or brand icons. Please note that the issue tracker can currently only be updated manually so you may not be seeing the most up-to-date data. I am working on a way to keep it updated automatically.

Icon Editor

The custom icon editor expands on the editor included in the icon library to allow creation of PNGs using the path data from any 24x24, 48x48 or 512x512 (vertically flipped) SVG. Also includes the ability to add block-helper or color-helper as an overlay.

New features will occasionally be available to preview & test at petershaggynoble.github.io/MDI-Sandbox/src/.

Background

When we began to drop Font Awesome from our projects in favour of the much more comprehensive Material Design Icons, so used were we to FA's website that we struggled at times to find the icons we needed on the MDI website or "cheatsheet". So I threw together my own "cheatsheet" with the initial focus being on better categorising the icons and adding some keywords to help with searching (both of which proved to be sizable jobs!).

As it was something that only we were going to be using, I also used it as an opportunity to play around with a few things I didn't normally get to play with in my everyday work back then such as Google's Material Design and, more importantly, ECMAScript 6+. But then it grew, especially once Templarian invited me to be a collaborator on the main MDI project, and I started thinking about more possibilities for use by a wider audience which led to the creation of more tools, some of them "proofs of concept" that would eventually be integrated into the new MDI site currently under development.

mdi-sandbox's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

mdi-sandbox's Issues

Download Vector Drawable exports faulty XML

Hi! Thank you so much for your website, I'm in love with it.
I noticed that the Download Vector Drawable button on the right exports faulty XML, such as:

<vector xmlns:android="http://schemas.android.com/apk/res/android" android:height="24dp" android:width="24dp" android:viewportWidth="24" android:viewportHeight="24"><path android:fillColor="

Would it be possible to fix it?

I'd also suggest giving an Android-Studio-friendly name, by replacing the dashes with underscores.

Add statuses to automatic preview generator

Currently the automatic preview generator detects whether an icon is an existing MDI icon or a stock Google icon when the icon parameter is used or if it's custom icon when the path parameter is used and applies the appropriate labels and colour. The addition of a status parameter would allow for that to be overridden and for the use of additional labels from the manual generator.

The following are the colours I'm going to use for each type/label but I'm open to alternative suggestions:

  • MDI icons: Grey
  • Google icons: Green
  • WIP icons: Blue
  • Final draft WIP icons: Indigo
  • Rejected icon suggestions: Red
  • Legacy MDI icons: Brown (can also be auto-detected)

Incorrect canvas rendering

I've come across this a couple of times. I'll have a correct path, and it renders it small on the preview. There are not JavaScript errors in the console.

image

Compared to new dev site:

image

M19.13,6.56c-.11,1.74-1.86,3.65-3.9,5.86a28.69,28.69,0,0,0-5.12,6.81C9,21.69,7.54,22,6.9,22H6.8A2,2,0,0,1,5,20.63a3.16,3.16,0,0,1,1.2-3.34C8.37,15.37,9.93,14,10,13.17a.56.56,0,0,0-.14-.38,7.48,7.48,0,0,1-2.25-2.68.34.34,0,0,1,.16-.4.37.37,0,0,1,.45.09,5.16,5.16,0,0,0,1.85,1.51.47.47,0,0,0,.38-.12.61.61,0,0,0,.14-.26c-.13-.13-.56-.52-2.05-1.77a.52.52,0,0,1-.07-.71l.06-.09a.55.55,0,0,1,.35-.2.6.6,0,0,1,.39.11l2,1.6c.05,0,.11.06.14,0a.4.4,0,0,0,.24-.29.21.21,0,0,0-.06-.08L9.5,7.86a.53.53,0,0,1-.1-.71h0a.51.51,0,0,1,.35-.22.56.56,0,0,1,.4.1l2,1.61.06,0a.67.67,0,0,0,.25-.33.18.18,0,0,0-.08-.15l-2-1.58a.49.49,0,0,1-.09-.68.48.48,0,0,1,.33-.2.51.51,0,0,1,.38.1l2.06,1.62,0,0a.42.42,0,0,0,.24-.26.14.14,0,0,0-.06-.09l-2-1.63a.52.52,0,0,1-.12-.65.51.51,0,0,1,.75-.16L14,6.28a.19.19,0,0,0,.1,0,.3.3,0,0,0,.23-.25.14.14,0,0,0-.07-.1l-2-1.63a.53.53,0,0,1-.1-.71l.09-.13a.53.53,0,0,1,.35-.21.53.53,0,0,1,.4.1L15.05,5a.19.19,0,0,0,.14,0,.62.62,0,0,0,.46-.8c0-.13-.26-.61-2.05-1.54a.38.38,0,0,1-.19-.48A.37.37,0,0,1,13.87,2C14.78,2.3,19.3,3.84,19.13,6.56Z

Window resize event

I've noticed that when I resize the window, the main layout breaks until I refresh the page. This could possibly be solved by adding a resize event listener.

Remove colour selection in preview generator

In order to keep some consistency to the colours being used for previews, the ability to manually select a colour in the preview generator should be removed and instead the colour should be automatically selected based on the preview type.

See #18 for the list of proposed colours with the addition of blue-grey overlaid with red for comparison previews.

Also, the "Vector Only" type should be removed as that's not a thing any more.

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.