All Projects → IPRIT → md-svg-vue

IPRIT / md-svg-vue

Licence: MIT license
Material design icons by Google for Vue.js & Nuxt.js (server side support & inline svg with path)

Programming Languages

javascript
184084 projects - #8 most used programming language
Vue
7211 projects

Projects that are alternatives of or similar to md-svg-vue

svg-gobbler
Open source browser extension that makes designing and developing easier by finding, processing, exporting, optimizing, and managing SVG content.
Stars: ✭ 272 (+1842.86%)
Mutual labels:  svg-icons, inline-svg
sass-inline-svg
Inline url-encoded SVG with Sass. Optional variable string replacement included!
Stars: ✭ 21 (+50%)
Mutual labels:  svg-icons, inline-svg
react-crud-icons
57 SVG icons for CRUD applications, packaged as a React component with light & dark themes and tooltip.
Stars: ✭ 19 (+35.71%)
Mutual labels:  svg-icons, inline-svg
Bytesize Icons
Tiny style-controlled SVG iconset (101 icons, 12kb)
Stars: ✭ 3,662 (+26057.14%)
Mutual labels:  svg-icons, inline-svg
docsify-ssr-demo
NOTICE: This repo is outdated and SSR is work-in-progress.
Stars: ✭ 61 (+335.71%)
Mutual labels:  server-side-rendering
core
Server side rendering with The Elm Architecture in Deno
Stars: ✭ 16 (+14.29%)
Mutual labels:  server-side-rendering
vitext
The Next.js like React framework for better User & Developer experience!
Stars: ✭ 376 (+2585.71%)
Mutual labels:  server-side-rendering
Font Awesome
The iconic SVG, font, and CSS toolkit
Stars: ✭ 66,937 (+478021.43%)
Mutual labels:  svg-icons
universal-react-relay-starter-kit
A starter kit for React in combination with Relay including a GraphQL server, server side rendering, code splitting, i18n, SEO.
Stars: ✭ 14 (+0%)
Mutual labels:  server-side-rendering
universal
A counterpart to common package to be used with Angular Universal
Stars: ✭ 115 (+721.43%)
Mutual labels:  server-side-rendering
ultimate-hot-boilerplate
🚀 node-react universal app boilerplate with everything on hot reload, SSR, GraphQL, Flow included
Stars: ✭ 35 (+150%)
Mutual labels:  server-side-rendering
vue-feather-icon
No description or website provided.
Stars: ✭ 109 (+678.57%)
Mutual labels:  svg-icons
react-svg-icon-generator
Generate React Icon Component from SVG icons to show, resize and recolor them.
Stars: ✭ 65 (+364.29%)
Mutual labels:  svg-icons
FlexDotnetCMS
A powerful, flexible, decoupled and easy to use and Fully Featured ASP .NET CMS, it can also be used as a Headless CMS
Stars: ✭ 45 (+221.43%)
Mutual labels:  server-side-rendering
prism
(No longer in development). Experimental compiler for building isomorphic web applications with web components.
Stars: ✭ 106 (+657.14%)
Mutual labels:  server-side-rendering
nextjs-ssr-isr-cdk-aws
🦄 ‏‏‎ ‎‏‏‎ ‎‏‏‎ ‎Next.js webapp using Server Side Rendering (SSR) and Incremental Static Regeneration (ISR) deployed with Serverless Nextjs CDK construct on AWS using CloudFront and Lambda@Edge
Stars: ✭ 78 (+457.14%)
Mutual labels:  server-side-rendering
NotEnoughAV1Encodes-Qt
Linux GUI for AV1 Encoders
Stars: ✭ 27 (+92.86%)
Mutual labels:  chunking
numvalidate
Phone number validation REST API
Stars: ✭ 54 (+285.71%)
Mutual labels:  server-side-rendering
esa-httpclient
An asynchronous event-driven HTTP client based on netty.
Stars: ✭ 82 (+485.71%)
Mutual labels:  chunking
ves
Vue SSR(Server Side Render) Web Framework for Egg
Stars: ✭ 23 (+64.29%)
Mutual labels:  server-side-rendering

Material Design Icons by Google for Vue.js & Nuxt.js (inline SVG with path)

This library should grant an easy-to-use interface to icons from Material Design.

Advantages of this module in comparing to fonts, svg sprites, etc.

  1. Instead of importing all icons to your application you can simply import only necessary icons what you only need.
  2. Decrease a huge amount of bytes cause you no need to load fonts or something else.
  3. You will see your icon on the site right away after server side rendering cause server renders icon as inline svg with only one path.
  4. Great performance cause icons built on top of Vue functional components.
  5. You can extend existing iconset with your icons. Just clone this repo and load your icons (each icon in separate svg file) to corresponding path.

This project could not have been possible without BrowserStack. BrowserStack]

How to use

Simply install it using npm or yarn:

npm install --save md-svg-vue

or

yarn add md-svg-vue

Import and usage

Simply import the icon you wish to use to your vue project with the CommonJS syntax like in the following examples:

var MdClose = require('md-svg-vue/dist/action/MdClose');

// or

import MdClose from 'md-svg-vue/dist/action/MdClose';

Common structure of import paths:

import MdIcon from 'md-svg-vue/dist/<namespace>/<icon-name>.vue'

where

  • namespace - Google Material Icons namespace (e.g.: action, alert, av, content, communication, etc.)
  • icon-name - Vue component with Icon (MdClose, MdBluetoothSearching)

Then you need to import the icon to your Vue component:

props: {
  // ...
},
components: {
  MdClose,
  MdBluetoothSearching,
  MdAttachMoney
}

The naming syntax of these components is md-<kebab-cased-icon-name>.

Example.vue:

<template>
  <div>
    <button @click="close()">
      <md-close></md-close>
    </button>
  </div>
</template>

or

<template>
  <div>
    <button @click="close()">
      <md-close class="your-class"></md-close>
    </button>
  </div>
</template>

or

<template>
  <div class="bluetooth-searching">
    <md-bluetooth-searching :width="16" :height="16"></md-bluetooth-searching>
    <span>Searching...</span>
  </div>
</template>

And after rendering the icon component you will see resulting html:

<svg width="24" height="24" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="icon md-icon">
  <path d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"></path>
</svg>

Used resources

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].