flint_hugeicons 0.1.0
flint_hugeicons: ^0.1.0 copied to clipboard
Flint Dart adapter for Hugeicons. Renders 6,000+ Hugeicons as native Flint UI elements and pure SVG strings without Flutter engine dependencies.
flint_hugeicons #
Flint Dart adapter for Hugeicons.
Renders 6,000+ Hugeicons as native Flint UI elements and pure SVG strings without any Flutter engine dependencies.
Features #
- Native Flint UI Component: Use
HugeIcon(...)directly as a Flint UI node (FlintElement) in components and pages. - Pure SVG Generation: Generate raw SVG XML strings with
HugeIcon.svg(...)/HugeIcon.toSvg(...)for server rendering, HTML templates, or emails. - Flint
IconWidget Compatibility: Convert any Hugeicon into Flint's nativeIconDatawithHugeIcon.toIconData(name, icon). - Zero Flutter Engine Runtime: Compiles cleanly with the Dart VM and Dart Web DOM without
package:flutter. - Easy Upstream Sync: Run
dart run tool/sync_icons.dartanytime to fetch the latest icons from Hugeicons.
Installation #
Add flint_hugeicons to your pubspec.yaml:
dependencies:
flint_hugeicons:
path: ../flint_hugeicons # or git / pub
flint_dart: ^1.4.0
Usage #
1. In Flint UI Components #
import 'package:flint_dart/ui.dart';
import 'package:flint_hugeicons/flint_hugeicons.dart';
class MyPage extends Component {
@override
View build(BuildContext context) {
return div(
className: 'icon-bar',
children: [
HugeIcon(HugeIcons.home01, size: 24, color: '#2563eb'),
HugeIcon(HugeIcons.search01, size: 20, color: '#64748b'),
HugeIcon(HugeIcons.settings01, size: 20, color: '#10b981'),
],
);
}
}
2. Generate Raw SVG String (SSR / HTML / Templates) #
import 'package:flint_hugeicons/flint_hugeicons.dart';
final svgString = HugeIcon.svg(
HugeIcons.home01,
size: 32,
color: '#2563eb',
title: 'Home',
);
3. Use with Flint's Built-in Icon Widget #
import 'package:flint_dart/ui.dart';
import 'package:flint_hugeicons/flint_hugeicons.dart';
final iconData = HugeIcon.toIconData('home', HugeIcons.home01);
final iconWidget = Icon(iconData, size: 24, color: '#2563eb');
Syncing Latest Icons #
Whenever Hugeicons releases new icons upstream:
dart run tool/sync_icons.dart
This immediately updates lib/styles/stroke_rounded.dart with all new icons.
License #
MIT License. Hugeicons icon designs belong to Hugeicons Pro.