Include popular icons in your React projects easily with `react-icons`, which utilizes ES6 imports that allows you to include only the icons that your project is using.
## Installation (for standard modern project)
```bash
yarn add react-icons
# or
npm install react-icons --save
```
example usage
```jsx
import { FaBeer } from "react-icons/fa";
function Question() {
return (
<h3>
{" "}
Lets go for a <FaBeer />?{" "}
</h3>
);
}
```
[View the documentation](https://react-icons.github.io/react-icons) for further usage examples and how to use icons from other packages. _NOTE_: each Icon package has it's own subfolder under `react-icons` you import from.
For example, to use an icon from **Material Design**, your import would be: `import { ICON_NAME } from 'react-icons/md';`
## Installation (for meteorjs, gatsbyjs, etc)
If your project grows in size, this option is available.
This method has the trade-off that it takes a long time to install the package.
```bash
yarn add @react-icons/all-files
# or
npm install @react-icons/all-files --save
```
example usage
```jsx
import { FaBeer } from "@react-icons/all-files/fa/FaBeer";
Dependencies on `@types/react-icons` can be deleted.
#### Yarn
```bash
yarn remove @types/react-icons
```
#### NPM
```bash
npm remove @types/react-icons
```
## Contributing
### Development
```bash
yarn
yarn submodule # fetch icon sources
cd packages/react-icons
yarn build
```
### Preview
The preview site is the [`react-icons`](https://react-icons.github.io/react-icons) website, built in [NextJS](https://nextjs.org/).
```bash
cd packages/react-icons
yarn build
cd ../preview
yarn start
```
### Demo
The demo is a [Create React App](https://create-react-app.dev/) boilerplate with `react-icons` added as a dependency for easy testing.
```bash
cd packages/react-icons
yarn build
cd ../demo
yarn start
```
## Why React SVG components instead of fonts?
SVG is [supported by all major browsers](http://caniuse.com/#search=svg). With `react-icons`, you can serve only the needed icons instead of one big font file to the users, helping you to recognize which icons are used in your project.