fluentui-system-icons
Fluent System Icons are a collection of familiar, friendly and modern icons from Microsoft.
Top Related Projects
Material Design icons by Google (Material Symbols)
Simply beautiful open-source icons
Premium hand-crafted icons built by Ionic, for Ionic apps and web apps everywhere 🌎
The iconic SVG, font, and CSS toolkit
Official open source SVG icon library for Bootstrap.
A set of over 5500 free MIT-licensed high-quality SVG icons for you to use in your web projects.
Quick Overview
Fluent UI System Icons is an open-source collection of icons designed by Microsoft for use in various applications and interfaces. It provides a comprehensive set of modern, consistent, and customizable icons that align with Microsoft's Fluent Design System, offering developers and designers a versatile toolkit for creating visually appealing user interfaces.
Pros
- Extensive collection of over 4,000 icons covering a wide range of use cases
- Consistent design language aligning with Microsoft's Fluent Design System
- Available in multiple formats (SVG, PDF, PNG) and styles (filled, regular, outlined)
- Regularly updated and maintained by Microsoft
Cons
- Limited to Microsoft's design language, which may not fit all project aesthetics
- Requires attribution when used in commercial projects
- Some icons may be too specific to Microsoft products or services
- Learning curve for developers unfamiliar with icon systems or Fluent Design
Getting Started
To use Fluent UI System Icons in your project:
- Visit the GitHub repository
- Navigate to the "Assets" folder
- Choose the desired icon format (SVG, PDF, or PNG)
- Download the icons you need
- Incorporate the icons into your project using your preferred method (e.g., img tags, CSS background images, or SVG inline)
For web projects, you can also use the icons via CDN:
<link href="https://cdn.jsdelivr.net/npm/@fluentui/svg-icons/icons.css" rel="stylesheet" />
<i class="ms-Icon ms-Icon--Add" aria-hidden="true"></i>
For more advanced usage and customization options, refer to the repository's documentation.
Competitor Comparisons
Material Design icons by Google (Material Symbols)
Pros of Material Design Icons
- Larger icon set with over 2,000 icons in various styles
- Comprehensive documentation and guidelines for usage
- Widely adopted and recognized design system
Cons of Material Design Icons
- Less frequent updates compared to Fluent UI System Icons
- Heavier file sizes due to the extensive collection
- May not align perfectly with non-Google design languages
Code Comparison
Material Design Icons:
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
<i class="material-icons">favorite</i>
Fluent UI System Icons:
<link href="https://cdn.jsdelivr.net/npm/@fluentui/svg-icons/fonts.css" rel="stylesheet">
<i class="ms-Icon ms-Icon--Heart" aria-hidden="true"></i>
Both repositories offer easy integration into web projects, but Material Design Icons uses a more straightforward class naming convention. Fluent UI System Icons requires an additional CSS class (ms-Icon
) and uses a different naming pattern for icons.
Overall, Material Design Icons provides a more extensive collection with established design principles, while Fluent UI System Icons offers a fresh, modern look with more frequent updates. The choice between the two depends on the specific project requirements and design preferences.
Simply beautiful open-source icons
Pros of Feather
- Simpler, minimalist design aesthetic
- Larger community and wider adoption
- More flexible licensing (MIT)
Cons of Feather
- Fewer icons available (287 vs. 2000+ in Fluent UI)
- Less consistency with Microsoft's design language
- Limited customization options compared to Fluent UI
Code Comparison
Feather:
<i data-feather="circle"></i>
<script>
feather.replace()
</script>
Fluent UI System Icons:
<img src="https://raw.githubusercontent.com/microsoft/fluentui-system-icons/master/assets/Circle/SVG/ic_fluent_circle_24_regular.svg" alt="Circle Icon">
Both icon sets are easy to implement, but Feather offers a more streamlined approach with its JavaScript library. Fluent UI System Icons requires direct use of SVG files, which can be more flexible but may require additional steps for implementation.
Feather is ideal for projects seeking a clean, minimalist look and broad compatibility. Fluent UI System Icons is better suited for applications aiming to align with Microsoft's design language or requiring a vast array of icons. The choice between the two depends on the specific needs of the project, design preferences, and integration requirements.
Premium hand-crafted icons built by Ionic, for Ionic apps and web apps everywhere 🌎
Pros of Ionicons
- Larger icon set with over 1,200 icons compared to Fluent UI's ~1,000
- Supports multiple file formats (SVG, WebFont, PNG, PDF)
- Includes a custom icon creation tool (Ionicons App)
Cons of Ionicons
- Less frequent updates compared to Fluent UI's regular releases
- Fewer style variations for each icon (e.g., filled, outlined, sharp)
- Limited integration with specific design systems or frameworks
Code Comparison
Ionicons usage:
<ion-icon name="heart"></ion-icon>
Fluent UI System Icons usage:
import { Heart24Regular } from '@fluentui/react-icons';
<Heart24Regular />
Both libraries offer simple implementation, but Fluent UI's approach provides more specific size and style options directly in the import statement.
Summary
Ionicons offers a larger, more diverse icon set with multiple file format support and a custom icon creation tool. However, Fluent UI System Icons provides more frequent updates, consistent style variations, and tighter integration with Microsoft's design system. The choice between the two depends on specific project requirements, design preferences, and framework compatibility.
The iconic SVG, font, and CSS toolkit
Pros of Font-Awesome
- Larger icon set with over 2,000 icons, offering more variety
- Well-established and widely recognized in the web development community
- Supports both web fonts and SVG icons, providing flexibility in implementation
Cons of Font-Awesome
- Larger file size, which may impact page load times
- Some advanced features and icons require a paid subscription
- Less focused on a specific design system, potentially leading to inconsistency
Code Comparison
Font-Awesome (using web fonts):
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/all.min.css">
<i class="fas fa-user"></i>
Fluent UI System Icons:
<img src="https://raw.githubusercontent.com/microsoft/fluentui-system-icons/master/assets/Person/SVG/ic_fluent_person_24_regular.svg" alt="Person icon">
Font-Awesome offers a simpler implementation using CSS classes, while Fluent UI System Icons requires direct use of SVG files. Font-Awesome's approach may be more convenient for some developers, but Fluent UI's method provides more control over the icon's appearance and size.
Official open source SVG icon library for Bootstrap.
Pros of Icons
- Larger icon set with over 1,800 icons compared to Fluent UI's ~1,000
- More widely adopted and recognized in the web development community
- Includes additional tools like icon font generation and SVG sprite creation
Cons of Icons
- Less consistent visual style across icons compared to Fluent UI's cohesive design language
- Fewer size variations and less granular customization options
- Limited to web-focused icons, while Fluent UI covers a broader range of platforms
Code Comparison
Fluent UI System Icons usage:
import { IconName } from '@fluentui/react-icons';
<IconName />
Icons usage:
<svg class="bi" width="32" height="32" fill="currentColor">
<use xlink:href="bootstrap-icons.svg#icon-name"/>
</svg>
Both libraries offer simple implementation, but Fluent UI provides a more React-friendly approach with direct component imports, while Icons relies on SVG syntax and external sprite files.
A set of over 5500 free MIT-licensed high-quality SVG icons for you to use in your web projects.
Pros of Tabler Icons
- Larger icon set with over 3,400 icons compared to Fluent UI's 2,000+
- More frequent updates and active community contributions
- Supports multiple file formats including SVG, React components, and web font
Cons of Tabler Icons
- Less consistent design language across icons compared to Fluent UI's cohesive style
- Fewer customization options for icon styles and colors
- Limited official documentation and usage guidelines
Code Comparison
Tabler Icons (React):
import { IconHome } from '@tabler/icons-react';
function App() {
return <IconHome size={24} color="blue" />;
}
Fluent UI System Icons (React):
import { Home24Regular } from '@fluentui/react-icons';
function App() {
return <Home24Regular primaryFill="blue" />;
}
Both libraries offer easy-to-use React components, but Fluent UI provides more specific naming conventions for icon sizes and styles. Tabler Icons uses a more generic approach with customizable size props.
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
Fluent UI System Icons
Fluent UI System Icons are a collection of familiar, friendly and modern icons from Microsoft.
Icon List
Direction
Within the metadata.json file for an icon, a property named directionType
is used to indicate the direction of the icon. This property can have one of the following values:
unique
, meaning that the icon is unique and has a specific RTL and LTR versionmirror
, meaning that the icon can be mirrored for RTL or LTR languages
The property singleton
is also used to indicate the default direction that should be used for the icon.
Installation
Android
The library is published via Maven Central, please ensure that the mavenCentral()
repository has been added to the root build.gradle
file:
repositories {
...
mavenCentral()
}
Include the following dependency in your project's build.gradle
:
implementation 'com.microsoft.design:fluent-system-icons:1.1.261@aar'
For library docs, see android/README.md.
iOS and macOS
CocoaPods
use_frameworks!
pod "FluentIcons", "1.1.261"
Carthage
git "git@github.com:microsoft/fluentui-system-icons.git" "1.1.261"
For library docs, see ios/README.md.
Flutter
In the pubspec.yaml
of your flutter project, add the following dependency:
dependencies:
...
fluentui_system_icons: ^1.1.261
For library docs, see flutter/README.md.
Plain svg
Inline svg directly. See packages/svg-icons/README.md.
Contributing
Importer
The importer generates the Android and iOS libraries from the icons in the assets
directory.
Jump into the directory:
cd importer
Install npm dependencies:
npm install
npm run clean
List all the available commands:
npm run
Build Pipeline
Our build pipeline runs deploy:android
and deploy:ios
to create the libraries. The build definitions are located in .github/workflows/
.
Demo apps
You can build and run the demo apps following the steps below.
Android
- Follow the Importer section above and run the command
npm run deploy:android
- Open the android directory in Android Studio
- Select the
sample-showcase
in the build configuration dropdown - Click run
Flutter
Prerequisite: Make sure you have flutter configured in Android Studio
- Open the flutter directory in Android Studio
- Select the
example
in the directory and open it in Android Studio - Click run
Contact
Please feel free to open a GitHub issue and assign to the following points of contact with questions or requests.
- Jason Custer(@jasoncuster) / Spencer Nelson(@spencer-nelson) / Joe Woodward(@thewoodpecker) - Design
- Nick Romano(@rickromano) - iOS
- Will Hou(@willhou) - Android
- Akashdeep Singh(@aakash1313) - Flutter
Code of Conduct
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.
Top Related Projects
Material Design icons by Google (Material Symbols)
Simply beautiful open-source icons
Premium hand-crafted icons built by Ionic, for Ionic apps and web apps everywhere 🌎
The iconic SVG, font, and CSS toolkit
Official open source SVG icon library for Bootstrap.
A set of over 5500 free MIT-licensed high-quality SVG icons for you to use in your web projects.
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot