Skip to content

Host Yourself - SVG + JS

If you like control, you can host Font Awesome yourself, and you can choose to use SVG + JS described below or Web Fonts + CSS to get icons into your projects.

Inside the Font Awesome Download or package, you’ll find the files you need. The /js folder contains the core styling, utilities, and icons for all of Font Awesome’s family and style options.

Which Files and FoldersWhat’s in there
/jsIcons and scripts for each style, or all of them at once.

Copy both the fontawesome.js loader and the .js files for the styles you’d like to use into your project’s static assets directory (or wherever you prefer to keep front end assets or vendor stuff). Be sure to include the core file - /js/fontawesome.js - as well as the JS files for any individual styles you want to use.

Copy the core and specific style files you need into your project directories Copy the core fontawesome.js and specific style files you need into your project directories

Here are tables that show which files go with which styles:

StyleAvailabilityJS File NamePreview
SolidPro onlysolid.js or solid.min.js
RegularPro onlyregular.js or regular.min.js
LightPro onlylight.js or light.min.js
ThinPro onlythin.js or thin.min.js

StyleAvailabilityJS File NamePreview
SolidPro onlyduotone.js or duotone.min.js
RegularPro onlyduotone-regular.js or duotone-regular.min.js
LightPro onlyduotone-light.js or duotone-light.min.js
ThinPro onlyduotone-thin.js or duotone-thin.min.js

StyleAvailabilityJS File NamePreview
SolidPro onlysharp-solid.js or sharp-solid.min.js
RegularPro onlysharp-regular.js or sharp-regular.min.js
LightPro onlysharp-light.js or sharp-light.min.js
ThinPro onlysharp-thin.js or sharp-thin.min.js

StyleAvailabilityJS File NamePreview
SolidPro onlysharp-duotone-solid.js or sharp-duotone-solid.min.js
RegularPro onlysharp-duotone-regular.js or sharp-duotone-regular.min.js
LightPro onlysharp-duotone-light.js or sharp-duotone-light.min.js
ThinPro onlysharp-duotone-thin.js or sharp-duotone-thin.min.js

StyleAvailabilityJS File NamePreview
SolidFreebrands.js or brands.min.js

StyleAvailabilityJS File NamePreview
RegularPro+ onlychisel-regular.js or chisel-regular.min.js

StyleAvailabilityJS File NamePreview
SolidPro+ onlyetch-solid.js or etch-solid.min.js

StyleAvailabilityJS File NamePreview
RegularPro+ onlyjelly-regular.js or jelly-regular.min.js
Fill RegularPro+ onlyjelly-fill-regular.js or jelly-fill-regular.min.js
Duo RegularPro+ onlyjelly-duo-regular.js or jelly-duo-regular.min.js

StyleAvailabilityJS File NamePreview
SolidPro+ onlynotdog-solid.js or notdog-solid.min.js
Duo SolidPro+ onlynotdog-duo-solid.js or notdog-duo-solid.min.js

StyleAvailabilityJS File NamePreview
RegularPro+ onlyslab-regular.js or slab-regular.min.js
Press RegularPro+ onlyslab-press-regular.js or slab-press-regular.min.js

StyleAvailabilityJS File NamePreview
LightPro+ onlythumbprint-light.js or thumbprint-light.min.js

StyleAvailabilityJS File NamePreview
SemiboldPro+ onlywhiteboard-semibold.js or whiteboard-semibold.min.js

Link the core fontawesome.js file along with the JS files for whichever styles you want to use into the <head> of each template or page that you plan to add icons to. We recommend referencing the fontawesome.js loader last. Make sure the paths correctly point to where you placed the files!

Here’s an example html page with the file links in the <head> and a few icons in the content.

<head>
<!-- our project is using icons from Solid, Sharp Thin, Sharp Duotone Thin + Brands -->
<script defer src="/your-path-to-fontawesome/js/fontawesome.js"></script>
<script defer src="/your-path-to-fontawesome/js/brands.js"></script>
<script defer src="/your-path-to-fontawesome/js/solid.js"></script>
<script defer src="/your-path-to-fontawesome/js/sharp-thin.js"></script>
<script defer src="/your-path-to-fontawesome/js/sharp-duotone-thin.js"></script>
</head>
<body>
<!-- solid style icon -->
<i class="fa-solid fa-user"></i>
<!-- brand icon -->
<i class="fa-brands fa-github-square"></i>
<!-- other pro styles -->
<i class="fa-sharp fa-thin fa-dog"></i>
<i class="fa-sharp-duotone fa-thin fa-dog"></i>
</body>

Like Anakin said, it’s woooorking! All of our icons are now ready to do your project’s bidding. Learn how to add icons in your project and then use their power to bring order and style to your UI!


TL;DR: All.js doesn’t include “all” icons any more.

In the /js folder, you may have noticed a file named all.js. This file only contains the Classic Solid, Regular, Light, Thin, Duotone Regular, and Brands icons plus the core styling and utilities to render them. Since we kept making so many icons, the all.js file got too big to fit all the styles. And since we don’t recommend such a big file for production sites, it’s best to just use the .js files for whichever styles you’re using in your project.


Did you know you can download a Pro Kit and host it yourself? To download your Kit, make sure it’s set to use Pro icons, then click the Download tab, download the “Host Yourself - SVJ/JS”, and follow the instructions above for hosting yourself.

If you have custom icons in your Kit, they will be included in your Kit download. You’ll find these additional files included in the download zip:

Path to the filesWhat the files do
/css/custom-icons.cssHandles the display of custom icons with Web Fonts
/js/custom-icons.js /js/custom-icons.min.jsHandles the display of custom icons with SVG+JS
/sprites/custom-icons.svgAll your custom icons in one SVG sprite
/svgs/custom-icons/Folder containing all your custom icons as SVGs
/webfonts/custom-icons.woff2Custom icon font in WOFF2 format
/scss/custom-icons.scssSass (SCSS) Preprocessor partials that handle the display of custom icons with Web Fonts

These files will work the same as the Font Awesome files and assets. And if you are using all.js or all.css, your custom icons will be included in those, though for performance reasons, we recommend adding just the files you are using in your project.

Here’s an example project using Sharp Solid and custom icons from a downloaded Kit:

<head>
<!-- Our project just needs Font Awesome Sharp Solid + our Custom Icons -->
<script defer src="/your-path-to-fontawesome/js/sharp-solid.js"></script>
<script defer src="/your-path-to-fontawesome/js/custom-icons.js"></script>
<script defer src="/your-path-to-fontawesome/js/fontawesome.js"></script>
</head>
<body>
<!-- uses sharp solid style -->
<i class="fa-sharp fa-solid fa-user"></i>
<!-- uses Kit custom icon style -->
<i class="fa-kit fa-your-custom-icon-name"></i>
</body>

For most projects, we’ve got you covered with backward compatibility so you won’t have to update any icon names in your project - we’ll translate any older version icon names, style syntax, and CSS pseudo-element icon references automatically.

But there are other changes that might affect your project from version to version, be sure to check out our upgrading guides to get all the details on upgrading an existing project using Version 6 or older versions to a newer version of Font Awesome.