Coder Social home page Coder Social logo

akveo / eva-icons Goto Github PK

View Code? Open in Web Editor NEW
8.6K 116.0 364.0 51.78 MB

A pack of more than 480 beautifully crafted Open Source icons. SVG, Sketch, Web Font and Animations support.

Home Page: https://akveo.github.io/eva-icons/

License: MIT License

TypeScript 43.85% JavaScript 24.66% HTML 9.87% SCSS 21.63%
icons icon icon-font icon-pack

eva-icons's Introduction

Eva Icons

Eva Icons is a pack of more than 480 beautifully crafted Open Source icons for common actions and items. Additionally, Eva Icons supports 4 animation types: zoom, pulse, shake and flip. Download on desktop to use them in your digital products for Web, iOS and Android. Icons are provided in two visual types: Fill and Outline and in several formats, including PNG, SVG, font, Sketch, etc.

Download

CDN

Load from CDN in your project:

<script src="https://unpkg.com/eva-icons"></script>

After including the script, eva will be available as a global variable.

NPM

  • Install the package:
npm i eva-icons
  • Include it to your page:
<script src="path/to/dist/eva-icons.js"></script>
  • Or require the package (may vary depending on your build system):
const eva = require('eva-icons');
import * as eva from 'eva-icons';

How to use

JavaScript

  • Add the data-eva attribute with the icon name to an element:
<i data-eva="github"></i>
  • Call eva.replace(); to replace all elements with the data-eva data attribute with SVG elements. You can also pass some additional parameters to the replace method to modify the replace function behavior.
<!DOCTYPE html>
<html lang="en">
  <title></title>
  <script src="https://unpkg.com/eva-icons"></script>
  <body>
  
    <i data-eva="github"></i>

    <script>
      eva.replace()
    </script>
  </body>
</html>

Thanks to Feather Icons for the build process inspiration.

  • Additional attributes:
    • data-eva-fill: set icon color
    • data-eva-height: set icon height
    • data-eva-width: set icon width
    • data-eva-animation: set icon animation
<i data-eva="github" data-eva-fill="#ff0000" data-eva-height="48" data-eva-width="48"></i>

Fonts

Eva Icons are also available as a Web Font.

  • Include the font css into your page:
<link href="path/to/style/eva-icons.css">
  • Add eva and eva-icon classes to an element:
<i class="eva eva-github"></i>

We recommend using SVG icons due to better rendering and performance capabilities, more details.

Documentation

eva.replace(options)

Replaces all elements that have a data-eva attribute with SVG markup.

options optional object.

Available 'option' properties:

Name Type Default value Description
fill string none Icon color
width string or number 24px Icon width
height string or number 24px Icon height
class string none Custom css class
animation object none Icon animation

Animation

  • Add the data-eva-animation attribute with the animation type (zoom, pulse, shake and flip) to an element:
<i data-eva="github" data-eva-animation="zoom"></i>
  • Additional animation attributes:
    • data-eva-hover: Makes the animation available on hover. Default value is true. Available true or false.
    • data-eva-infinite: Makes the animation infinite. Default value is false. Available true or false.
<i data-eva="github" data-eva-animation="zoom" data-eva-hover="false" data-eva-infinite="true"></i>

Note: In the above example github icon will be always animated. This type of animation will be applied only to current icons.

  • Pass animation as property in a eva.replace method.
eva.replace({
  animation: {
    type: string, // zoom, pulse, shake, flip
    hover: boolean, // default true
    infinite: boolean, // default false
  }
});

Note: The animation will be applied to all replaced elements.

  • Add eva-parent-hover class to the parent container in a case you want to activate the animation hovering on the parent element.
<div class="eva-parent-hover">
  <i data-eva="github" data-eva-animation="zoom"></i>
  Zoom animation
</div>

3rd party implementations

License

MIT license.

More from Akveo

  • Nebular - Angular Components, Auth and Security
  • ngx-admin - the best Angular admin template

How can I support the developers?

  • Star our GitHub repo โญ
  • Create pull requests, submit bugs, suggest new features or documentation updates ๐Ÿ”ง
  • Follow us on Twitter ๐Ÿพ
  • Like our page on Facebook ๐Ÿ‘

From Developers

Made with โค๏ธ by Akveo team. Follow us on Twitter to get the latest news first! We're always happy to receive your feedback!

eva-icons's People

Contributors

akveo-private avatar artyorsh avatar denstrigo avatar lugovsky avatar nnixaa avatar rdumais avatar tibing-old-email avatar wpbarcelos avatar yggg avatar

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  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  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  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  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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

eva-icons's Issues

Installing to Vue-cli project

I've installeged eva-icons in npm

main.js:

import Vue from 'vue'
import App from './App.vue'
import router from './router'
import store from './store'
import Vuemerang from 'vuemerang'
import * as eva from 'eva-icons'

Vue.config.productionTip = false
import 'vuemerang/dist/vuemerang.css' //Vuemerang styles
Vue.use(Vuemerang)
Vue.use(eva)

new Vue({
  router,
	store,
	Vuemerang,
	eva,
  render: h => h(App)
}).$mount('#app')

It doesn't work. What am I doing wrong?

Cant add eva icons in angular 8

Getting error Cannot resolve definitions for module 'eva-icons' on import * as eva from 'eva-icons'; in app-component.ts after installing via npm i have also added the <script src="https://unpkg.com/eva-icons"></script> in the index.html

Icon with Bottom Tab Navigator Not Working?

Hi,

How can i use these icons with React (createBottomTabNavigator) Navigation 4?

I have trid like this but not working.

const homeBottomTabNavigator = createBottomTabNavigator(
    {
        Home1: {
            screen: homeStack,
            navigationOptions: () => ({
                tabBarIcon: ({ tintColor }) => (
                    <Icon name="home" size={25} color="#900" />
                )
            })
        }},{
});

bundle size

Hi, and thanks for an awesome set of icons. I am using them in an angular 9 project, but they seem to add quite a lot to the bundle size. I have this npm task: ng build --prod --stats-json && webpack-bundle-analyzer ./dist/noc/stats.json and checked the bundle of different packages. I wasn't expecting eva-icons to be that big. Is there a way to trim down on that?

Add tests

Tests should be added for build icons process.

How about to create icons enum?

It's too boring to copy/paste icon names. What about enum like:

export enum IconTypes {
    GITHUB: 'github',
    HEART: 'heart',
    ...
}

And then use like:

<Icon {...style} name={IconTypes.GITHUB} />

How do I change color of icons?

Sorry I'm not that familiar to SVG icons. I looked into docs and noticed they are styled with CSS like stroke: #aaf;. Each SVG file contains <defs> which has a <style> element like:

<style>.cls-1{fill:#231f20;}.cls-2{fill:none;opacity:0;}</style>
<style>.cls-1{fill:#fff;opacity:0;}.cls-2{fill:#231f20;}</style>
<style>.cls-1{fill:none;opacity:0;}.cls-2{fill:#231f20;}</style>
<style>.cls-1{opacity:0;}.cls-2{fill:#fff;}.cls-3{fill:#231f20;}</style>

I could think of removing those styles and add my own in parent elements. But what's the suggested solution for styling them?

BTW, I'm doing experiments currently to see if I can use them in my projects(or I may just fallback to fonts) https://github.com/Respo/respo-eva/blob/master/icons/eva/icons.cljs#L9-L14

SyntaxError: Unexpected token 'export'

While trying to use an eva icon in React (next js)
evaicon-bug
, this error occured.

Steps to reproduce

Followed the instructions at iconfiy.design, React tab


npm install --save-dev @iconify/react @iconify-icons/eva
import { Icon, InlineIcon } from '@iconify/react';
import arrowIosBackOutline from '@iconify-icons/eva/arrow-ios-back-outline';

then to use

<Icon icon={arrowIosBackOutline} />

Icon request: Regular car

I am building a ridesharing app, and would like for an icon to represent a car. Not the current truck that is available.

PNGs are zero bytes

Hey, nothing much to say besides that the "Complete Eva Icons Package" containing both PNGs and SVGs contain broken PNGs. Every single PNG icon is 0 bytes. Downloading the specific PNGs yields the same result.

[Request] QR code scan icon

Hi,

I'd like to request a "QR code scan" icon. We need it at a current project and it has a common usage.

Regards,
Stefan

Instagram Icon

Hello,
i don't find the instagram icon , perhaps facebook ,twitter ,google are presents
Best Regards

Default viewbox is bad

The default width="24" height="24" viewBox="0 0 24 24" has whitespace all around the icons, it is a real pain to deal with. There should not be any whitespace, the viewbox should be adjusted accordingly by default, if users want whitespace they can add margin to the element.

Heart icon design

These icons are amazing, my only criticism is the heart icon. I see many icon packs design the heart like this (the technique using two circles + rotated square) which makes it seem generic and inorganic. Would it be possible to change it to something closer to Twitter's heart?

Twitter heart icon

Usage in static site generators

Currently, eva-icons only works in browser-environments. It would be nice to have the ability to use it in static site generators (like 11ty) as the generated SVGs are static and don't need to be generated in the browser, if they could be generated during the build.

Question: Icons Submission

I wanted to know if we can submit more icon designs to the pack? If so, is there any documentation about the guidelines for the designs?
Thank you.

[Request] Like and Dislike icon

Hello, I love your icons and I'm using them in my current project!

Do you think it would be a good idea to add Like and Dislike icons? (Something like thumbs up and thumbs down)

I'm currently using heart for Like and I'm finding it hard to find a dislike alternative.

Wishing a nice day!

Change color on hover

This shouldn't be really hard. Should I wrap this icon into a child-parent structure as in the example from the home page?

<i data-eva="plus-circle-outline" data-eva-fill="#AAA"/>

Incorrect Baseline

The baseline of these icons seems inconsistent to other font families. I am inexperienced working with fonts, are they designed to align with something else or does the ttf and woff2 versions not support an offset baseline?

image

This is causing the icons to look out of place.

image

As a temporary fix, I've added:

eva {
    vertical-align: -0.133333em;
}

image

Although this works temporarily. I can't be sure it will look good on a high density display, and it does not account for any fonts that need a different baseline.

How I can use in react?

I see the icons can be installed as an npm package but it doesn't have any example on how to use it in a frameworks. Ex. React, Vue, Angular.

READ THIS BEFORE YOU INSTALL

Please do not use this!

The icons are not weird and not user friendly.
I've couldn't find half of what I needed.
Those 480 icons are not even 300, because half of them are the same.

Don't believe me?
Check the filled and outlined versions of: arrows, paper clips, bar charts, chevrons, corners, diagonal arrows, menu and so on.

Request: Icon for changing language

We need a better icon for changing language in a project that is currently using Eva. The most suitable icon right now in the Eva collection is perhaps the globe, but a globe can just as well (and, I think, more often) mean "change region".

Something like this would be nice. I personally prefer the "Aๆ–‡" symbol, but a globe in a balloon, or a globe combined with some other symbol signaling language, would be okay as well. A balloon by itself signals "chat" to me, and sound waves signal "text to speech" or "listen", so we should be careful with those.

image

image

image

image

Grid for icons

Hi,

Can you share the template file (artboard) with the grid? Just need to design a few custom icons.

[Request] Discord icon

Hi,

I could not find the discord icon to create a login button. I thought it might be forgotten as every other social platform icon is there.

Can you please add it? Cheers!

no such file or directory

Hi,

I am getting below fatal error. Can you please suggest me. Seems like index.js is available and one more process searching on index.ts

WARNING in ./node_modules/@ui-kitten/eva-icons/node_modules/react-native-eva-icons/icons/index.js
Module Warning (from ./node_modules/@expo/webpack-config/node_modules/source-map-loader/dist/cjs.js):
Failed to parse source map from 'C:\Users\Lenovo\drive\appd\node_modules@ui-kitten\eva-icons\lib\icons\index.ts' file: Error:
ENOENT: no such file or directory, open 'C:\Users\Lenovo\drive\appd\node_modules@ui-kitten\eva-icons\lib\icons\index.ts'

Raja K

Apple icon

Hello,
i don't find the apple icon. Is there some plan to include?

Scissors icon?

Hi,
amazing work!

would you be able to add a scissors icon to go along with the clipboard and copy icon to make cut?

thank you very much in advance

request for new icons

Feature request
Request you to add following icons:

  • Language (for i18n)
  • Accessibility
  • Scatter chart
  • Gauge chart
  • Dashboard
  • Heat map
  • Credit cards (specific for popular brands like Amex, visa and master )
  • For Maps:
    • Transportation types (cycle/bike, motor bike, walking, cab, car, rail, flight and bus)
    • Traffic light, traffic cone, tow-away, speed limit (20, 40, 60, 80) and other traffic signs
    • First responder (medical, fire, police).
    • Buildings (government, residential, hotel, individual house, apartment etc.)
    • Parking, parks, camping, tourist attraction, museum etc.
    • Routing
  • Unlink (complement icon for link icon which exists)

Is this just a fork of Feather?

Hey!

I love the look of these icons โ€“ seems like all the packaging process is from Feather though? Might be worth linking back to that repo.

Sketch file icon ordering

Hi, I often use the sketch file with the icons to use them in my designs.
The only problem I am facing is that it's very hard to see which icons have both a filled and outlined design.

If I see an icon filled, I have a hard time finding them outlined, and vice-versa.

I think it could be greatly improved if the icons that have 2 versions are in the same order, and only those who have just 1 version come last.

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.