fui_kit
हमारी पुस्तकालय में 6 अलग-अलग शैलियों या थीम में 498 से अधिक वेक्टर SVG आइकन हैं।
baldomerocho/fui_kit open-source repository details.
{"sdk":"flutter"}^2.0.10+1{"sdk":"flutter"}^6.0.0यह अंग्रेज़ी मूल स्नैपशॉट है। नवीनतम सामग्री GitHub पर देखें।
fui_kit banner
pub package pub points likes license: MIT codecov CI
fui_kit is a flat icon pack for Flutter with 2,988 SVG icons — 498 unique glyphs in 6 styles (regular, bold and solid weights, each with rounded or straight corners), based on the open source Flaticon UIcons set.
IconTheme (light/dark mode
works out of the box).semanticLabel support for screen readers.IconButton, AppBar,
ListTile, BottomNavigationBar…All 6 icon styles
flutter pub add fui_kit
Or add it to your pubspec.yaml manually:
dependencies:
fui_kit: ^2.1.0
import 'package:flutter/material.dart';
import 'package:fui_kit/fui_kit.dart';
class MyWidget extends StatelessWidget {
const MyWidget({super.key});
@override
Widget build(BuildContext context) {
return const FUI(RegularRounded.heart);
}
}
Use it like any other icon widget:
IconButton(
onPressed: () {},
icon: const FUI(BoldRounded.settings),
)
ListTile(
leading: const FUI(SolidRounded.user, semanticLabel: 'Profile'),
title: const Text('Profile'),
)
Every glyph exists in all six styles. Pick the class that matches the look you want:
| Style | Class | Example |
|---|---|---|
| Regular Rounded | RegularRounded |
FUI(RegularRounded.bookmark) |
| Regular Straight | RegularStraight |
FUI(RegularStraight.bookmark) |
| Bold Rounded | BoldRounded |
FUI(BoldRounded.bookmark) |
| Bold Straight | BoldStraight |
FUI(BoldStraight.bookmark) |
| Solid Rounded | SolidRounded |
FUI(SolidRounded.bookmark) |
| Solid Straight | SolidStraight |
FUI(SolidStraight.bookmark) |
Icon names are lowerCamelCase versions of the original kebab-case Flaticon
names: address-book → RegularRounded.addressBook.
FUI(
SolidRounded.heart,
color: Colors.red, // defaults to IconTheme color
width: 40, // defaults to IconTheme size (24)
height: 40,
semanticLabel: 'Favorite', // announced by screen readers
)
| Parameter | Type | Default | Description |
|---|---|---|---|
file (positional) |
String |
required | Icon constant, e.g. RegularRounded.add |
color |
Color? |
IconTheme color |
Tint applied to the icon |
width / height |
double? |
IconTheme size (24) |
Rendered size |
semanticLabel |
String? |
null |
Accessibility label |
fit |
BoxFit |
BoxFit.contain |
How the icon fills its bounds |
matchTextDirection |
bool |
false |
Mirror the icon in RTL locales |
FUI resolves its color and size from the ambient
IconTheme,
exactly like Flutter's built-in Icon widget. That means icons
automatically switch color with your ThemeData in light/dark mode, and you
can restyle entire subtrees at once:
IconTheme(
data: const IconThemeData(color: Colors.teal, size: 32),
child: Row(
children: const [
FUI(RegularRounded.home),
FUI(RegularRounded.search),
FUI(RegularRounded.bell),
],
),
)
all map
(kebab-case name → asset path), and FuiIcons.styles aggregates the six
styles. Handy for building your own icon picker:// All Regular Rounded icons:
for (final entry in RegularRounded.all.entries) {
print('${entry.key} -> ${entry.value}');
}
// Every style:
FuiIcons.styles.forEach((styleName, icons) {
print('$styleName has ${icons.length} icons');
});
Nothing breaks — your existing code keeps compiling. Two things were modernized in 2.1.0:
Icon constants are now lowerCamelCase. The old SCREAMING_CASE constants still work but are deprecated and will be removed in 4.0.0:
FUI(RegularRounded.ADDRESS_BOOK) // deprecated
FUI(RegularRounded.addressBook) // ✅ use this
Icons now follow your theme. When you don't pass a color, the icon
uses the ambient IconTheme color (previously it was tinted grey), and
the default size honours IconTheme.size (24 in Material apps,
previously a fixed 30). Pass color/width/height explicitly if you
need the old values.
Why don't I see the icon I expect? Check the gallery — names follow the original Flaticon UIcons naming. The same glyph exists in all 6 styles.
Can I use these icons commercially? Yes. The package code is MIT licensed and the icons come from Flaticon's open source UIcons collection. See the attribution note below.
How big is the package? The package bundles all 2,988 SVGs (~12 MB uncompressed) as Flutter assets. A future 3.0.0 release will ship the icons as icon fonts with full tree-shaking, so only the icons you use end up in your app binary. Follow the roadmap for progress.
Found a bug or want a new feature? Open an issue or a pull request on GitHub. If this package saves you time, a ⭐ on GitHub and a 👍 on pub.dev help others discover it.