Skip to content

MahApps/IconPacks.Avalonia

Repository files navigation


IconPacks.Avalonia

IconPacks.Avalonia

Really awesome icon packs for Avalonia in one library

Supporting a wide range of platforms such as Windows, macOS, Linux, iOS, Android and WebAssembly.

Bluesky X (formerly Twitter) Follow Mastodon Follow Discord
Image AppVeyor Build (with branch) GitHub Actions Workflow Status

The IconPacks packages contains controls, markup extensions and converters to use these awesome icons with your Avalonia applications in a simple way.

The same icons are also available for WPF and UWP with the MahApps.Metro.IconPacks packages which makes your WPF and UWP applications nicer.

Icon collection Version NuGet
Complete IconPacks collection with all Icons in one package 69328 Image
Bootstrap Icons 1.13.1 2078 Image
Boxicons v2 2.1.4 1634 Image
Boxicons v3 3.0.0 3584 Image
Circum Icons Free 2.0.2 288 Image
Codicons 0.0.41 499 Image
Coolicons 4.1 442 Image
Entypo+ 411 Image
Eva Icons 1.1.3 490 Image
Feather Icons 4.29.1 287 Image
File Icons 2.1.47 920 Image
Fontaudio 1.1.0 155 Image
Font Awesome Free v5 5.15.4 1611 Image
Font Awesome Free v6 6.7.2 2060 Image
Font Awesome Free v7 7.1.0 2089 Image
Fontisto 3.0.4 616 Image
Fork Awesome 1.2.0 794 Image
Game Icons May 4, 2025 4170 Image
Ionicons 4.6.4.1 696 Image
Jam Icons 3.1.0 940 Image
Keyrune Icons 3.17.1 404 Image
Lucide Icons 0.552.0 1640 Image
Material Design Icons 7.4.47 7447 Image
Material Design Icons Light 0.2.63 257 Image
Material Icons (Google) 0.14.15 8413 Image
Memory Icons 1.5.0 651 Image
Microns 1.1.4 164 Image
MingCute Icon 2.9.6 3098 Image
Modern UI Icons Feb 12, 2015 1260 Image
MynaUI Icons 0.3.9 2544 Image
Primer Octicons (GitHub) 19.19.0 670 Image
Phosphor Icons 2.1.1 7560 Image
PICOL Icons 1.1.0 549 Image
Pixelarticons 1.8.1 486 Image
Radix Icons 1.3.0 324 Image
Remix Icon 4.7.0 3135 Image
RPG Awesome 0.2.0 495 Image
Simple Icons 15.18.0 3369 Image
Typicons 2.1.2 336 Image
Unicons 4.2.0 1610 Image
Vaadin Icons 24.8.4 636 Image
Weather Icons 2.0.12 219 Image
Zondicons July 12, 2017 297 Image

Let's get started

Install

IconPacks.Avalonia is delivered via NuGet package manager. You can find the packages here:

All Icons in one package

Separate Icon packages

Use these commands in the Package Manager console to install packages manually:

Install-Package IconPacks.Avalonia

or one of these

Install-Package IconPacks.Avalonia.BootstrapIcons
Install-Package IconPacks.Avalonia.BoxIcons2
Install-Package IconPacks.Avalonia.BoxIcons
Install-Package IconPacks.Avalonia.CircumIcons
Install-Package IconPacks.Avalonia.Codicons
Install-Package IconPacks.Avalonia.Coolicons
Install-Package IconPacks.Avalonia.Entypo
Install-Package IconPacks.Avalonia.EvaIcons
Install-Package IconPacks.Avalonia.FeatherIcons
Install-Package IconPacks.Avalonia.FileIcons
Install-Package IconPacks.Avalonia.Fontaudio
Install-Package IconPacks.Avalonia.FontAwesome5
Install-Package IconPacks.Avalonia.FontAwesome6
Install-Package IconPacks.Avalonia.FontAwesome
Install-Package IconPacks.Avalonia.Fontisto
Install-Package IconPacks.Avalonia.ForkAwesome
Install-Package IconPacks.Avalonia.GameIcons
Install-Package IconPacks.Avalonia.Ionicons
Install-Package IconPacks.Avalonia.JamIcons
Install-Package IconPacks.Avalonia.KeyruneIcons
Install-Package IconPacks.Avalonia.Lucide
Install-Package IconPacks.Avalonia.Material
Install-Package IconPacks.Avalonia.MaterialLight
Install-Package IconPacks.Avalonia.MaterialDesign
Install-Package IconPacks.Avalonia.MemoryIcons
Install-Package IconPacks.Avalonia.Microns
Install-Package IconPacks.Avalonia.MingCuteIcons
Install-Package IconPacks.Avalonia.Modern
Install-Package IconPacks.Avalonia.MynaUIIcons
Install-Package IconPacks.Avalonia.Octicons
Install-Package IconPacks.Avalonia.PhosphorIcons
Install-Package IconPacks.Avalonia.PicolIcons
Install-Package IconPacks.Avalonia.PixelartIcons
Install-Package IconPacks.Avalonia.RadixIcons
Install-Package IconPacks.Avalonia.RemixIcon
Install-Package IconPacks.Avalonia.RPGAwesome
Install-Package IconPacks.Avalonia.SimpleIcons
Install-Package IconPacks.Avalonia.Typicons
Install-Package IconPacks.Avalonia.Unicons
Install-Package IconPacks.Avalonia.VaadinIcons
Install-Package IconPacks.Avalonia.WeatherIcons
Install-Package IconPacks.Avalonia.Zondicons

Usage

Use this axaml/xaml namespace for all IconPacks:

xmlns:iconPacks="https://github.com/MahApps/IconPacks.Avalonia"

Add the styles to the Applications styles

    <Application.Styles>
        <FluentTheme />

        <StyleInclude Source="avares://IconPacks.Avalonia/Icons.axaml" />
    </Application.Styles>

The resource avares://IconPacks.Avalonia/Icons.axaml should be used when using the main IconPacks.Avalonia NuGet package which contains all icons.

All other has the naming scheme avares://IconPacks.Avalonia.<PACKAGENAME>/<PACKAGENAME>.axaml

    <Application.Styles>
        <FluentTheme />

        <StyleInclude Source="avares://IconPacks.Avalonia.<PACKAGENAME>/<PACKAGENAME>.axaml" />
    </Application.Styles>

The PackIcon controls

The PackIcon controls are the main featured controls to use an icon from an IconPack in a simple way.

Each package has there own control with this name scheme: PackIcon<PACKAGENAME>

<iconPacks:PackIconBoxIcons Kind="RegularAlarm"
                            Width="24"
                            Height="24" />

or

<iconPacks:PackIconCodicons Kind="SaveAll"
                            Width="24"
                            Height="24" />

The PackIconControl

The PackIconControl is a control which can be used for any kind of available IconPacks.

This control is only available with the main IconPacks.Avalonia NuGet package.

<iconPacks:PackIconControl Kind="{x:Static iconPacks:PackIconBoxIconsKind.RegularAlarm}"
                           Width="24"
                           Height="24" />

or

<iconPacks:PackIconControl Kind="{x:Static iconPacks:PackIconCodiconsKind.SaveAll}"
                           Width="24"
                           Height="24" />

The PackIcon MarkupExtensions

A faster way to get an Icon for any ContentControl is to use the PackIcon MarkupExtension.

If you want e.g. a Button with an Icon from the Codicons then you can do this:

<Button Content="{iconPacks:Codicons SaveAll}" />

<!-- or -->

<Button Content="{iconPacks:Codicons Kind=SaveAll}" />

It's also possible to use some properties of the MarkupExtension like this:

<Button Content="{iconPacks:Codicons SaveAll, Width=32, Height=32}" />

There is also a general (generic) MarkupExtension available. With this MarkupExtension you can use any IconPack enumeration.

This MarkupExtension is only available with the main IconPacks.Avalonia NuGet package.

<Button Content="{iconPacks:PackIcon {x:Static iconPacks:PackIconCodiconsKind.SaveAll}, Width=32, Height=32}" />

The PackIcon Image MarkupExtensions

It's possible to use all icons as an Image with the PackIcon image MarkupExtension.

<Image Source="{iconPacks:BoxIconsImage Kind=RegularAtom, Brush=Brown}"
       Width="24" Height="24"
       HorizontalAlignment="Left" Margin="10" />

In addition, there is also a general (generic) MarkupExtension available.

This MarkupExtension is only available with the main IconPacks.Avalonia NuGet package.

<Image Source="{iconPacks:PackIconImage Kind={x:Static iconPacks:PackIconBoxIconsKind.RegularAlarm}, Brush=GreenYellow}"
       Width="24" Height="24"
       HorizontalAlignment="Left" Margin="10" />

The PackIcon ImageConverter

The PackIcon image converters can be used to convert a PackIcon to an Image.

<Image Source="{Binding #BoxIconsKindCombobox.SelectedItem, Mode=OneWay, Converter={iconPacks:PackIconBoxIconsKindToImageConverter Brush=Goldenrod}}"
       Width="24" Height="24"
       HorizontalAlignment="Left" Margin="10" />

In addition, there is also a general (generic) PackIconKindToImageConverter available.

This PackIconKindToImageConverter is only available with the main IconPacks.Avalonia NuGet package.

<Image Source="{Binding #BoxIconsKindCombobox.SelectedItem, Mode=OneWay, Converter={iconPacks:PackIconKindToImageConverter Brush=Goldenrod}}"
       Width="24" Height="24"
       HorizontalAlignment="Left" Margin="10" />

Want to say thanks?

This library is free and can be used in open source and commercial applications.

It's tested, contributed and used by me and many other people... So mainly hit the ⭐ button, that's all. ❤️ 🐿️ ( 💵 or 💶 or ☕ or 🍺 or some other gifts are also being accepted...).

Icons

Please don't forget to give also a ⭐ to all used icon repositories!!!

IconPacks Browser

A Browser for all available Icon packages can be found here.

iconbrowserfinal

About

Awesome icon packs for Avalonia in one library. Supporting a wide range of platforms such as Windows, macOS, Linux, iOS, Android and WebAssembly.

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Contributors

Languages