annotate default/node_modules/feather-icons/README.md @ 0:1d038bc9b3d2 default tip

Up:default
author Liny <dev@neowd.com>
date Sat, 31 May 2025 09:21:51 +0800
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
1 # Feather
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
2
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
3 [![Travis branch](https://img.shields.io/travis/colebemis/feather/master.svg?style=flat-square)](https://travis-ci.org/colebemis/feather)
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
4 [![npm](https://img.shields.io/npm/v/feather-icons.svg?style=flat-square)](https://www.npmjs.com/package/feather-icons)
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
5 [![npm](https://img.shields.io/npm/dm/feather-icons.svg?style=flat-square)](https://npm-stat.com/charts.html?package=feather-icons&from=2017-06-01)
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
6 [![Code Climate](https://img.shields.io/codeclimate/github/colebemis/feather.svg?style=flat-square)](https://codeclimate.com/github/colebemis/feather)
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
7 [![CDNJS version](https://img.shields.io/cdnjs/v/feather-icons.svg?style=flat-square)](https://cdnjs.com/libraries/feather-icons)
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
8
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
9 ## What is Feather?
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
10
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
11 Feather is a collection of **simply beautiful open source icons**. Each icon is designed on a 24x24 grid with an emphasis on simplicity, consistency and readability.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
12
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
13 **[feathericons.com](https://feathericons.com)**
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
14
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
15 ```
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
16 npm install feather-icons
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
17 ```
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
18
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
19 ## Table of Contents
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
20
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
21 * [Quick Start](#quick-start)
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
22 * [Usage](#usage)
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
23 * [Client-side JavaScript](#client-side-javascript)
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
24 * [Node](#node)
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
25 * [API Reference](#api-reference)
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
26 * [`feather.icons`](#feathericons)
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
27 * [`feather.toSvg()`](#feathertosvgkey-options)
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
28 * [`feather.replace()`](#featherreplaceoptions)
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
29 * [Roadmap](#roadmap)
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
30 * [Contributing](#contributing)
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
31 * [Related Projects](#related-projects)
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
32 * [License](#license)
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
33
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
34 ## Quick Start
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
35
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
36 Start with this [CodePen Template](https://codepen.io/pen?template=WOJZdM) to begin prototyping with Feather in the browser.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
37
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
38 Or copy and paste the following code snippet into a blank `html` file.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
39
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
40 ```html
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
41 <!DOCTYPE html>
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
42 <html lang="en">
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
43 <title></title>
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
44 <script src="https://unpkg.com/feather-icons/dist/feather.min.js"></script>
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
45 <body>
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
46
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
47 <!-- example icon -->
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
48 <i data-feather="circle"></i>
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
49
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
50 <script>
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
51 feather.replace()
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
52 </script>
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
53 </body>
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
54 </html>
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
55 ```
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
56
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
57 ## Usage
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
58
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
59 At its core, Feather is a collection of [SVG](https://svgontheweb.com/#svg) files. This means that you can use Feather icons in all the same ways you can use SVGs (e.g. `img`, `background-image`, `inline`, `object`, `embed`, `iframe`). Here's a helpful article detailing the many ways SVGs can be used on the web: [SVG on the Web – Implementation Options](https://svgontheweb.com/#implementation)
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
60
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
61 The following are additional ways you can use Feather.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
62
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
63 ### Client-side JavaScript
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
64
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
65 #### 1. Install
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
66
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
67 > **Note:** If you intend to use Feather with a CDN, you can skip this installation step.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
68
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
69 Install with [npm](https://docs.npmjs.com/getting-started/what-is-npm).
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
70
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
71 ```
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
72 npm install feather-icons --save
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
73 ```
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
74
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
75 Or just copy [`feather.js`](https://unpkg.com/feather-icons/dist/feather.js) or [`feather.min.js`](https://unpkg.com/feather-icons/dist/feather.min.js) into your project directory. You don't need both `feather.js` and `feather.min.js`.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
76
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
77 #### 2. Include
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
78
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
79 Include `feather.js` or `feather.min.js` with a `<script>` tag. These files are located in the `dist` directory of the npm package.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
80
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
81 ```html
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
82 <script src="path/to/dist/feather.min.js"></script>
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
83 ```
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
84
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
85 Or load the script from a CDN provider.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
86
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
87 ```html
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
88 <!-- choose one -->
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
89 <script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script>
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
90 <script src="https://unpkg.com/feather-icons/dist/feather.min.js"></script>
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
91 ```
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
92
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
93 After including the script, `feather` will be available as a global variable.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
94
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
95 #### 3. Use
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
96
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
97 To use an icon on your page, add a `data-feather` attribute with the icon name to an element.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
98
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
99 ```html
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
100 <i data-feather="circle"></i>
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
101 ```
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
102
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
103 See the complete list of icons at [feathericons.com](https://feathericons.com).
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
104
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
105 #### 4. Replace
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
106
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
107 Call the `feather.replace` method.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
108
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
109 ```html
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
110 <script>
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
111 feather.replace()
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
112 </script>
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
113 ```
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
114
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
115 All elements that have a `data-feather` attribute will be replaced with SVG markup corresponding to their `data-feather` attribute value. See the [API Reference](#api-reference) for more information about `feather.replace()`.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
116
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
117 ### Node
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
118 #### 1. Install
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
119
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
120 Install with [npm](https://docs.npmjs.com/getting-started/what-is-npm).
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
121
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
122 ```
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
123 npm install feather-icons --save
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
124 ```
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
125
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
126 #### 2. Require
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
127
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
128 ```javascript
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
129 var feather = require('feather-icons')
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
130 ```
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
131
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
132 #### 3. Use
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
133 ```javascript
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
134 feather.icons.circle
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
135 // <circle cx="12" cy="12" r="10"></circle>
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
136
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
137 feather.toSvg('circle')
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
138 // '<svg class="feather feather-circle" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle></svg>'
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
139
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
140 feather.toSvg('circle', { class: 'my-class', 'stroke-width': 1 })
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
141 // '<svg class="feather feather-circle my-class" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle></svg>'
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
142 ```
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
143
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
144 See the [API Reference](#api-reference) for more information about the available properties and methods of the `feather` object.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
145
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
146 ### Sprite
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
147
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
148 *Coming soon*
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
149
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
150 ## API Reference
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
151
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
152 ### `feather.icons`
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
153
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
154 An object with SVG path information for every icon.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
155
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
156 #### Usage
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
157
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
158 ```javascript
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
159 feather.icons.circle
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
160 // <circle cx="12" cy="12" r="10"></circle>
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
161
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
162 feather.icons.clock
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
163 // '<circle cx="12" cy="12" r="10"/><polyline points="12 6 12 12 15 15"/>'
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
164 ```
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
165
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
166 ### `feather.toSvg(key, [options])`
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
167
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
168 Returns an SVG string.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
169
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
170 #### Parameters
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
171
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
172 | Name | Type | Description |
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
173 | --------- | ------ | ----------- |
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
174 | `key` | string | Icon name |
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
175 | `options` (optional) | Object | Key-value pairs in the `options` object will be mapped to HTML attributes on the `<svg>` tag (e.g. `{ foo: 'bar' }` maps to `foo="bar"`). All default attributes on the `<svg>` tag can be overridden with the `options` object. |
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
176
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
177 #### Usage
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
178
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
179 ```javascript
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
180 feather.toSvg('circle')
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
181 // '<svg class="feather feather-circle" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle></svg>'
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
182
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
183 feather.toSvg('circle', { 'stroke-width': 1 })
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
184 // '<svg class="feather feather-circle" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle></svg>'
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
185
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
186 feather.toSvg('circle', { class: 'foo bar' })
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
187 // '<svg class="feather feather-circle foo bar" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle></svg>'
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
188 ```
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
189
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
190 [View Source](https://github.com/colebemis/feather/blob/master/src/to-svg.js)
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
191
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
192 ### `feather.replace([options])`
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
193
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
194 Replaces all elements that have a `data-feather` attribute with SVG markup corresponding to the element's `data-feather` attribute value.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
195
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
196 #### Parameters
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
197
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
198 | Name | Type | Description |
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
199 | ---------- | ------ | ----------- |
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
200 | `options` (optional) | Object | Key-value pairs in the `options` object will be mapped to HTML attributes on the `<svg>` tag (e.g. `{ foo: 'bar' }` maps to `foo="bar"`). All default attributes on the `<svg>` tag can be overridden with the `options` object. |
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
201
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
202 #### Usage
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
203
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
204 > **Note:** `feather.replace()` only works in a browser environment.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
205
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
206 Simple usage:
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
207 ```html
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
208 <i data-feather="circle"></i>
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
209 <!--
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
210 <i> will be replaced with:
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
211 <svg class="feather feather-circle" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle></svg>
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
212 -->
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
213
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
214 <script>
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
215 feather.replace()
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
216 </script>
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
217 ```
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
218
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
219 You can pass `feather.replace()` an `options` object:
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
220 ```html
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
221 <i data-feather="circle"></i>
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
222 <!--
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
223 <i> will be replaced with:
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
224 <svg class="feather feather-circle foo bar" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle></svg>
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
225 -->
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
226
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
227 <script>
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
228 feather.replace({ class: 'foo bar', 'stroke-width': 1 })
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
229 </script>
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
230 ```
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
231
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
232 The id and classes on a placeholder element (i.e. `<i>`) will be copied to the `<svg>` tag:
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
233
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
234 ```html
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
235 <i id="my-circle-icon" class="foo bar" data-feather="circle"></i>
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
236 <!--
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
237 <i> will be replaced with:
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
238 <svg id="my-circle-icon" class="feather feather-circle foo bar" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle></svg>
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
239 -->
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
240
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
241 <script>
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
242 feather.replace()
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
243 </script>
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
244 ```
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
245
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
246 [View Source](https://github.com/colebemis/feather/blob/master/src/replace.js)
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
247
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
248 ## Roadmap
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
249
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
250 - [x] Write contributing guidelines
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
251 - [ ] Write icon design guidelines
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
252 - [ ] Add usage examples
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
253 - [ ] Add SVG sprite
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
254 - [ ] Add tests
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
255 - [ ] Track code coverage
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
256 - [ ] Use Prettier to enforce consistent code style
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
257 - [ ] Add search/filter functionality to project website
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
258 - [ ] Handle icon aliases
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
259 - [ ] Handle usage of custom icons
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
260 - [ ] Improve SVG accessibility
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
261
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
262 ## Contributing
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
263
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
264 For more info on how to contribute please see the [contribution guidelines](https://github.com/colebemis/feather/blob/master/CONTRIBUTING.md).
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
265
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
266 Caught a mistake or want to contribute to the documentation? [Edit this page on Github](https://github.com/colebemis/feather/blob/master/README.md)
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
267
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
268 ## Related Projects
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
269
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
270 - [angular-feather](https://github.com/michaelbazos/angular-feather) - Feather icons for Angular applications
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
271 - [react-feather](https://github.com/carmelopullara/react-feather) - Feather icons as React components
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
272 - [vue-feather-icon](https://github.com/mage3k/vue-feather-icon) - Feather icons as Vue components
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
273
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
274 ## License
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
275
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
276 Feather is licensed under the [MIT License](https://github.com/colebemis/feather/blob/master/LICENSE).
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
277
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
278 [👋](mailto:[email protected])