Skip to content

Add Fontawesome icons to vue ​

Install the dependencies ​

Install the base Font Awesome SVG Library ​

console
npm i --save @fortawesome/fontawesome-svg-core

Install the icon set you want to use in your application ​

As example, we will use the Fee Solid icon set, but there are more to choose from their website.

console
npm i --save @fortawesome/free-solid-svg-icons

Add the Font Awesome Vue component ​

This package lets you use the icons easily inside a component (see below).

console
npm i --save @fortawesome/vue-fontawesome

Import Icons ​

In order to keep the project clean, we create a new folder for the import of the icons we will later use in the project. Only imported icons can be used in the Vue application.

// project structure
src
...
└───icons
|   |   fontAwesomeIconConfig.ts
...
typescript
// fontAwesomeIconConfig.ts

// import library to later add the imported icons to use it
import { library } from '@fortawesome/fontawesome-svg-core';

// import the icons you want to use inside your project
import {
  //...
  faStar,
  faXmark,
} from '@fortawesome/free-solid-svg-icons';

// add imported icons to library to use it
library.add(
  //...
  faStar,
  faXmark
);

Add changes to main.ts ​

typescript
// main.ts

// import font awesome icon component
import { FontAwesomeIcon } from '@fortawesome/vue-fontawesome';
/* add all icon we need to the font-awesome library */
import '/src/icons/fontAwesomeIconsConfig';

// add font awesome icon component for global usage
app.component('font-awesome-icon', FontAwesomeIcon);

app.use(i18n);

Also check the Official Documentation