PackagePackagetypeA library you install and call yourself.See every one →What this type is →by a community orgby a community orgoriginPublished by a community organisation, so it outlives any one maintainer.See every one →

ui5-fontawesome-lib

A UI5 library that adds Font Awesome's regular, solid and brand icon sets to the sap-icon:// namespace, addressable from a standard Icon control, for UI5 1.120.33 or later.

UI5's built-in icon font only goes so far, and this library extends it with three Font Awesome styles addressable from a standard Icon control: sap-icon://fa-regular/…, sap-icon://fa-solid/… and sap-icon://fa-brands/…. It installs as an npm package that UI5 tooling loads automatically, or from a CDN by adding its resource root to the bootstrap, and needs UI5 1.120.33 or later. The free Font Awesome set ships by default; using the Pro set means registering a separate npm scope and rebuilding the library.

Facts

Latestv1.1.0ReleasedLast pushLicenceApache-2.0

Where it sits

Lives in
Provides
Custom controls and librariesUI5Custom controls and librariescapabilityExtending the set of controls an app is built from: a control of its own, a wrapper around a third-party widget, or an icon font registered with the framework, packaged so another app can reuse it. Distinct from [Web Components interop](capability:ui5-web-components), which brings in standard custom elements, and from [generators](capability:generators), which scaffold a control project rather than being one.

Who is behind it

UI5 CommunityUI5 CommunityOrganisationMaintains this
In the atlas: maintains 69
@ui5-community
maintainerMario KernichPersonContributes to this
In the atlas: maintains 8, contributes to 10, wrote 1
@mariokernich
Marco BeierPersonContributes to this
In the atlas: contributes to 13
@wridgeu
2 contributors

What it declares

Every artifact

Type
Package
Origin
By a community org

As a package

Where it runs
Inside its host
Distributed through
npm

Connections1

Install

npm add ui5-fontawesome-lib

Derived from the package name. No recipe recorded; the README has the configuration.

README

quoted from ui5-community/ui5-fontawesome-lib under Apache-2.0, read
ui5-community/ui5-fontawesome-lib/README.mdOn GitHub

🎨 UI5 FontAwesome Icons Library

Enhance your SAP UI5/OpenUI5 applications with modern Font Awesome icons! 🚀

This library seamlessly integrates Font Awesome icons into the SAP UI5 icon system, providing access to thousands of beautiful, scalable icons for your Fiori applications. Have a look at the ui5-icon-explorer project or directly visit ie.kernich.de for an example integration and interactive showcase of all free Font Awesome icons together with the built-in icons.

Build app ESLint check TypeScript check UI5 Lint Font Awesome License UI5

🎯 Features

  • ✨ Seamless Integration: Use Font Awesome icons with standard UI5 Icon controls
  • 🎨 3 Icon Styles: Regular, Solid, and Brand icons
  • 🕰️ Backwards compatible: Works with UI5 1.71 and newer (uses sap/ui/core/Lib when available, falls back to Core#initLibrary on older releases)

📋 Icon Mapping

Font Awesome StyleUI5 NamespaceExample Usage
fa-regularsap-icon://fa-regular<Icon src="sap-icon://fa-regular/face-grin-hearts" />
fa-solidsap-icon://fa-solid<Icon src="sap-icon://fa-solid/face-grin-hearts" />
fa-brandssap-icon://fa-brands<Icon src="sap-icon://fa-brands/github" />

🛠️ Setup & Configuration

Add the fontawesome.icons.lib library dependency to your manifest.json and follow one of the next methods.

{
  "dependencies": {
    "minUI5Version": "1.71.0",
    "libs": {
      "sap.ui.core": {},
      "sap.m": {},
      "fontawesome.icons.lib": {}
    }
  }
}

If using TypeScript, add ui5-fontawesome-lib to types definition.

{
  "compilerOptions": {
    "types": [
      "@sapui5/ts-types-esm",
      "ui5-fontawesome-lib"
    ]
  }
}

Install Dependencies

npm i ui5-fontawesome-lib

That should be it. The UI5 tooling will recognize the UI5 dependency (verifiable via UI5 CLI command UI5 tree) and take care of loading it for you.

with UI5 middleware (alternative recommendation)
npm i ui5-fontawesome-lib && npm i -D ui5-middleware-servestatic

Add the following configuration to your ui5.yaml:

server:
  customMiddleware:
    - name: ui5-middleware-servestatic
      afterMiddleware: compression
      mountPath: /resources/fontawesome/icons/lib/
      configuration:
        npmPackagePath: 'ui5-fontawesome-lib/dist/resources/fontawesome/icons/lib'
Method 2: Using CDN

Add https://cdn.kernich.de/ui5-fontawesome-lib/resources/fontawesome/icons/lib to your resource roots for fontawesome.icons.lib

<script
  id="sap-ui-bootstrap"
  src="https://sdk.openui5.org/resources/sap-ui-core.js"
  data-sap-ui-resource-roots='{
    "my.example.app": "./",
    "fontawesome.icons.lib": "https://cdn.kernich.de/ui5-fontawesome-lib/resources/fontawesome/icons/lib"
  }'
  data-sap-ui-on-init="module:sap/ui/core/ComponentSupport"
  data-sap-ui-compat-version="edge"
  data-sap-ui-frame-options="trusted"
  data-sap-ui-async="true"
></script>
Method 3: Local setup (for development)

Clone this repository and add it as a dependency to your local UI5 project setup.

💻 Usage Examples

Basic Icon Usage
<!-- Regular icons -->
<Icon src="sap-icon://fa-regular/heart" />

<!-- Solid icons -->
<Icon src="sap-icon://fa-solid/star" />

<!-- Brand icons -->
<Icon src="sap-icon://fa-brands/github" />
With Icon Properties
<Icon 
    src="sap-icon://fa-solid/rocket" 
    size="2rem" 
    color="#0070f3" 
    tooltip="Launch application" />
In JavaScript/TypeScript
import Icon from "sap/ui/core/Icon";

const icon = new Icon({
    src: "sap-icon://fa-solid/check-circle",
    size: "1.5rem",
    color: "green"
});

🎨 Font Awesome Pro Support

Want to use Font Awesome Pro icons? Here's how to extend this library:

Setup Font Awesome Pro Icons
  1. Follow the official Font Awesome tutorial: Font Awesome Pro Setup

  2. Create .npmrc file:

    @fortawesome:registry=https://npm.fontawesome.com/
    //npm.fontawesome.com/:_authToken=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
    
  3. Install Pro package:

    npm install --save @fortawesome/fontawesome-pro
  4. Update build process: Modify generate.js to include Pro font files by changing const loadPro = false; to const loadPro = true;

  5. Register new styles: Update library.ts to register additional icon styles

🚀 Development

Quick Start
# Clone the repository
git clone https://github.com/ui5-community/ui5-fontawesome-lib.git
cd ui5-fontawesome-lib

# Install dependencies
npm install

# Start development server
npm start

Visit http://localhost:8080/ to see the icon browser with search functionality.

📸 Screenshot

Icon Browser with Search

Interactive icon browser with search functionality - run npm start to see it in action!

Available Scripts
CommandDescription
npm startStart development server and get interactive demo of all icons
npm run buildBuild the library for production
npm run check:tsTypeScript type checking
npm run check:lintESLint code quality check
npm run check:ui5ui5lint check
npm run check:allRun all code quality checks
npm run fix:lintAutomatically fix lint issues if possible
Debugging

Enable sourcemaps in your browser's developer console to debug the original TypeScript code. Use Ctrl/Cmd + P in Chrome to open specific .ts files.

📊 Project Structure

ui5-fontawesome-lib/
├── src/                    # Source files
│   ├── fonts/             # Font Awesome font files
│   ├── library.ts         # Main library file
│   └── themes/            # UI5 themes
├── test/                  # Test files
├── dist/                  # Build output
└── scripts/               # Build and deployment scripts

🤝 Contributing

We welcome contributions! Please feel free to submit issues and pull requests.

Development Workflow
  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

📄 License

This project is licensed under the Apache Software License, version 2.0 - see the LICENSE file for details.

⭐ Support

If you find this library helpful, please consider giving it a star on GitHub! ⭐


Made with ❤️ for the SAP UI5 community

Apache-2.0, read

History

Latest

v1.1.0

Features 2

Notes

✨ New

  • Support for UI5 versions older than 1.118 (#4): sap/ui/core/Lib is only available as of UI5 1.118. The library now uses Lib.init when it is available and falls back to Core#initLibrary otherwise. Tested with UI5 1.71, 1.120 and 1.153.
  • Font Awesome 7.3.1 (was 7.0.0): all new and updated free icons of fa-solid, fa-regular and fa-brands
  1. v1.0.2

    Other 1

    Notes
    • Adding missing tsconfig.json file for build
  2. v1.0.1

  3. v1.0.0

    Notes

    Initial release of the library. This release contains Font Awesome Free 7.0.0

2downloads per week, npm
Weekly downloads for ui5-fontawesome-lib26 complete calendar weeks from 2026-04-20 to 2026-10-18; the latest total is 2.20 Apr – 26 Apr: 827 Apr – 3 May: 44 May – 10 May: 711 May – 17 May: 518 May – 24 May: 325 May – 31 May: 11 Jun – 7 Jun: 68 Jun – 14 Jun: 315 Jun – 21 Jun: 722 Jun – 28 Jun: 429 Jun – 5 Jul: 236 Jul – 12 Jul: 913 Jul – 19 Jul: 020 Jul – 26 Jul: 527 Jul – 2 Aug: 13 Aug – 9 Aug: 310 Aug – 16 Aug: 717 Aug – 23 Aug: 224 Aug – 30 Aug: 1331 Aug – 6 Sept: 27 Sept – 13 Sept: 814 Sept – 20 Sept: 321 Sept – 27 Sept: 528 Sept – 4 Oct: 45 Oct – 11 Oct: 312 Oct – 18 Oct: 2
Custom controls and libraries
  1. custom-controlsThirteen custom UI5 controls for abap2UI5 apps
  2. @abap2ui5/embed-controlUI5 custom control that runs an abap2UI5 app inside a host app
  3. ui5-cc-timerbuttonUI5 control library with a button that delays enabling or showing
  4. ui5-control-generatorCommand line generator of UI5 custom controls from html
  5. @marianfoo/ui5-cc-dayjsUI5 custom control formatting dates with Day.js
  6. ui5-cc-pdfviewerUI5 custom control rendering a PDF from a base64 data URI
  7. openui5-passwordOpenUI5 password input with strength scoring and rules
  8. openui5-tourOpenUI5 control library for guided app tours
  9. ui5-lib-visualizationUI5 control library wrapping C3.js charts as ui5.viz controls
  10. UI5XUI5 library of eight composite controls under the ui5x namespace
  11. openui5-cameraUI5 control for live camera preview and PNG capture
  12. ui5-cc-chartUI5 custom control wrapping Chart.js for line charts
  13. ui5-cc-mdUI5 custom control rendering Markdown to HTML
  14. openui5-paginatorA UI5 custom control that pages through large data in a table, for backends that serve pages over REST rather than OData.

Details

Sources4
Added by handdiscovered herechecked
npm registry, ui5-fontawesome-libversion, releases, installschecked
github.com/git+https://github.com/ui5-community/ui5-fontawesome-lib.gittree, pushes, contributors, CIchecked
README.mdquoted, and what the entry declareschecked

Sources are graph entities: the same page may back several entries, and an unreachable source flags every row that rests on it.

Compatibility and provenance
latestv1.1.0
first release
releases and cadence4, ~79d median
discovered viaAdded by hand
first seen in the atlas
ecosystem and domainui5, ui-and-frontend-bridge
Contributors2

From the repository’s contributor list, .

History in the atlas1
  1. First seen.
For your agent
Ref
artifact:ui5-community-ui5-fontawesome-lib
JSON
/artifacts/ui5-community-ui5-fontawesome-lib.json
MCP
Connecting an agent