Skip to content

Repository files navigation

Using my app is also a way to support me:
Scap: Screenshot & Markup EditScreen TestDeskmarkKeyzerVidwall HubVidCropVidwallMousio HintMousioMusicerAudioerFileSentinelFocusCursorVideoerKeyClickerDayBarIconedMenuistQuick RSSQuick RSSWeb ServeCopybook GeneratorDevTutor for SwiftUIRegexMateTime PassageIconize FolderTextsound SaverCreate Custom SymbolsDevHubResume RevisePalette GeniusSymbol Scribe

@uiw/icons

Buy me a coffeeFollow On XNPM DownloadsjsDelivr CDNreleases versionLICENSENPM Version

The premium icon font for uiwjs Component Library. Designed @uiw/icons by @liwen0526.

Visit https://uiwjs.github.io/icons/ and check out the search feature, which has keywords identifying common icon names and styles. For example, if you search for "arrow" we call up every icon that could possibly be used as an arrow. We've also included each icon's class name for easy copy / pasting when you're developing!

They are free to use and licensed under MIT. We intend for this icon pack to be used with uiw, but it’s by no means limited to it. Use them wherever you see fit, personal or commercial.

Installation

npm install @uiw/icons --save

HTML Example

You can use https://uiwjs.github.io/icons/ to easily find the icon you want to use. Once you've copied the desired icon's CSS classname, simply add the icon and icon's classname, such as apple to an HTML element.

You need link CSS

<linkrel="stylesheet" type="text/css" href="node_modules/@uiw/icons/w-icon.css">

Used in Less:

@import"~@uiw/icons/fonts/w-icon.css";

Used in JS:

import'@uiw/icons/fonts/w-icon.css';// orimport'@uiw/icons/fonts/w-icon.less';

note: It has a w-icon- prefix.

<iclass="w-icon-apple"></i>

Or use the Unicode, You can use Unicode website to easily find the Unicode icon you want to use.

<style>
.iconfont{
font-family:"w-icon"!important;
font-size:16px;
font-style: normal;
-webkit-font-smoothing: antialiased;
-webkit-text-stroke-width:0.2px;
-moz-osx-font-smoothing: grayscale;
}
</style><spanclass="iconfont">&#59907;</span>

Or manually download and link **@uiw/icons** in your HTML, It can also be downloaded via UNPKG:

<linkrel="stylesheet" type="text/css" href="https://unpkg.com/@uiw/icons/fonts/w-icon.css"><spanclass="w-icon-adobe"></span>

In Webpack

{test: /w-icon\.(eot|ttf|svg)$/,use: [{loader: require.resolve('url-loader'),options: {limit: 8192}},{loader: require.resolve('file-loader'),options: {name: 'static/fonts/[name].[hash:8].[ext]',}}]},

Used in React

Icons are used as components. v2.6.2+ support.

import{Adobe,Alipay}from'@uiw/icons';import{Alipay}from'@uiw/icons/Alipay';<Adobestyle={{fill: 'red'}}/><Alipayheight="36"/>

To use SVG images as React components directly, webpack loader support is required.

Install dependencies:

yarn add @svgr/webpack file-loader

Configure webpack loader:

// webpack.config.js{test: /\.svg$/,use: [{loader: require.resolve('@svgr/webpack'),options: {prettier: false,svgo: false,svgoConfig: {plugins: [{removeViewBox: false}],},titleProp: true,ref: true,},},{loader: require.resolve('file-loader'),options: {name: 'static/media/[name].[hash].[ext]',},},],issuer: {and: [/\.(ts|tsx|js|jsx|md|mdx)$/],},},

You can then import the SVG as a React component like this:

import{ReactComponentasComLogo}from'@uiw/icons/icon/alipay.svg';<ComLogo/>

Custom Icon Component

Create an Icon component.

importReactfrom'react';importsvgPathsfrom'@uiw/icons/fonts/w-icon.json';constrenderSvgPaths=(type)=>{constpathStrings=svgPaths[type];if(pathStrings==null){returnnull}returnpathStrings.map((d,i)=><pathkey={i}d={d}fillRule="evenodd"/>)}exportdefaultclassIconextendsReact.PureComponent{render(){const{ type, color }=this.props;if(type==null||typeoftype==="boolean"){returnnull;}return(<svgfill={color}viewBox={`0 0 24 24`}>{this.renderSvgPaths(type)}</svg>);}}

Use the Icon component:

constdemo=()=>{return(<Icontype="heart-on"/>)}

Development

Run the npm install to install the dependencies after cloning the project and you'll be able to:

To build *.svg*.ttf*.woff*.eot files

npm run font

To build site and push gh-pages branch

npm run start

Contributors

As always, thanks to our amazing contributors!

Made with github-action-contributors.

License

Created By svgtofont, Licensed under the MIT License.

Releases

Sponsor this project

Packages

Used by

Contributors

Languages