FontAwesome Pro icons

This plugin allows you to use Font Awesome Pro icons in Discourse with a FontAwesome license by using your account’s NPM package token.

This requires a few extra step to enable from a normal plugin:

First, you will need to set up an additional env var containing your font awesome pro license key: DISCOURSE_FONTAWESOME_AUTH_TOKEN

The install script also needs to be called during initialization, as an additional “after_code” hook. This downloads and adds the FontAwesome Pro SVGs on build using your auth token. This is an additional block separate from the plugin clone block.

Here is an example install in app.yml :

env:
  DISCOURSE_FONTAWESOME_AUTH_TOKEN: 123456
  
hooks:
  after_code:
    - exec:
        cd: $home/plugins
        cmd:
          - git clone https://github.com/discourse/discourse-fontawesome-pro.git
    - exec:
        cd: $home/plugins/discourse-fontawesome-pro
        raise_on_fail: false
        cmd:
          - $home/plugins/discourse-fontawesome-pro/scripts/install.sh

Picking an override style:

In the admin settings there is now an option to override the default Discourse icons with your own style:

Screenshot from 2020-05-10 11-34-26

Duotone

To take full control of duotone support, you will be looking to override the following CSS (in a theme, or otherwise) and replace it with your own color scheme:

svg .fa-secondary {
  opacity: 0.6;
}

To color individual icons reference the SVG’s ID:

#fad-search .fa-secondary {
  color: red;
}

Under the hood, this is using FontAwesome’s repository to install fonts to the plugin’s SVG folder, and lets Discourse pick up the sprites from there.

24 Likes

A post was split to a new topic: FontAwesome Pro Plugin: Incorrect Icons