Angular implementation of Iconify, strongly inspired from Iconify-React.
If you are using NPM:
npm install @visurel/iconify-angular
If you are using Yarn:
yarn add @visurel/iconify-angular
This package does not include icons. Icons are split into separate packages that available at NPM. See Iconify-React.
Import the icons you want to use, and export them as an object:
import home from '@iconify/icons-mdi/home';
import groupAdd from '@iconify/icons-mdi/group-add';
import bellSlash from '@iconify/icons-fa-solid/bell-slash';
export const appIcons = {
home,
'group-add': groupAdd,
'bell-slash': bellSlash
}
Register the icons in the your AppComponent constructor:
import { Component } from '@angular/core';
import { IconService } from '@visurel/iconify-angular';
import { appIcons } from './icons';
@Component({
selector: 'ic-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
constructor(iconService: IconService){
iconService.registerAll(appIcons);
}
}
Use it inside any template:
<ic-icon icon="home"></ic-icon>
<p>This is the inline icon: <ic-icon icon="bell-slash" [inline]="true"></ic-icon></p>
Assign the icon to an instance variable in the component:
import { Component } from '@angular/core';
import home from '@iconify/icons-mdi/home';
import groupAdd from '@iconify/icons-mdi/group-add';
import bellSlash from '@iconify/icons-fa-solid/bell-slash';
@Component({
selector: 'ic-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
homeIcon = home;
groupAddIcon = groupAdd;
bellSlashIcon = bellSlash;
}
Use it inside your template:
<ic-icon [icon]="homeIcon"></ic-icon>
<p>This is the inline icon: <ic-icon [icon]="bellSlashIcon" [inline]="true"></ic-icon></p>
@iconify/icons-*
packagesRun ng generate component component-name --project iconify
to generate a new component. You can also use ng generate directive|pipe|service|class|guard|interface|enum|module --project iconify
.
Note: Don't forget to add
--project iconify
or else it will be added to the default project in yourangular.json
file.
Run ng build iconify
to build the project. The build artifacts will be stored in the dist/
directory.
After building your library with ng build iconify
, go to the dist folder cd dist/iconify
and run npm publish
.
Run ng test iconify
to execute the unit tests via Karma.
To get more help on the Angular CLI use ng help
or go check out the Angular CLI README.