UNPKG

eva-icons

Version:

Eva Icons - beautifully crafted Open Source UI icons for common actions and items.

175 lines (127 loc) 5.31 kB
<h1><img src="https://i.imgur.com/cXYo5bi.png"> Eva Icons</h1> <img src="https://i.imgur.com/oDmqDkE.jpg"> **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 - [Complete Eva Icons Package](https://akveo.github.io/eva-icons/eva-icons.zip) - [NPM Package](https://www.npmjs.com/package/eva-icons) - you also can download icons one by one in `PNG` and `SVG` formats from [Eva Icons Website](https://hubs.ly/H0n7b3S0). ### CDN Load from CDN in your project: ```html <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: ```html <script src="path/to/dist/eva-icons.js"></script> ``` - Or require the package (may vary depending on your build system): ```js const eva = require('eva-icons'); ``` ```js import * as eva from 'eva-icons'; ``` ## How to use ### JavaScript - Add the `data-eva` attribute with the icon name to an element: ```html <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. ```html <!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](#animation) ```html <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: ```html <link href="path/to/style/eva-icons.css"> ``` - Add `eva` and `eva-icon` classes to an element: ```html <i class="eva eva-github"></i> ``` We recommend using SVG icons due to better rendering and performance capabilities, [more details](https://css-tricks.com/icon-fonts-vs-svg/). ## 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) | ### Animation - Add the `data-eva-animation` attribute with the animation type `(zoom, pulse, shake and flip)` to an element: ```html <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. ```html <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. ```js 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. ```html <div class="eva-parent-hover"> <i data-eva="github" data-eva-animation="zoom"></i> Zoom animation </div> ``` ## 3rd party implementations - [React Native](https://github.com/artyorsh/react-native-eva-icons) - [Flutter](https://github.com/piyushmaurya23/eva_icons_flutter) ## License [MIT](LICENSE.txt) license. ## More from Akveo - [Nebular](https://github.com/akveo/nebular) - Angular Components, Auth and Security - [ngx-admin](https://github.com/akveo/ngx-admin) - the best Angular admin template ## How can I support the developers? - Star our GitHub repo :star: - Create pull requests, submit bugs, suggest new features or documentation updates :wrench: - Follow us on [Twitter](https://twitter.com/akveo_inc) :feet: - Like our page on [Facebook](https://www.facebook.com/akveo/) :thumbsup: ## From Developers Made with :heart: by [Akveo team](https://hubs.ly/H0n79yM0). Follow us on [Twitter](https://twitter.com/akveo_inc) to get the latest news first! We're always happy to receive your feedback!