prithbrokenicons 1.0.3
prithbrokenicons: ^1.0.3 copied to clipboard
900+ Broken Icons for Flutter as compile-time const IconData constants via a custom TTF font. Zero runtime dependencies, all 6 platforms.
prith_broken_icons #
A complete Broken Icons icon set packaged as a Flutter icon library (PrithBrokenIcons-class), ready to use across all 6 Flutter platforms.
Platforms Supported #
This icon package works on all 6 Flutter target platforms:
| Platform | Supported |
|---|---|
| Android | ✅ |
| iOS | ✅ |
| Web | ✅ |
| Windows | ✅ |
| macOS | ✅ |
| Linux | ✅ |
Because it is built purely on Flutter's built-in IconData + custom TTF font assets, it renders identically on every platform with no native code or plugin dependencies.
Features #
- 904 outline icons + 2 filled icons covering a wide range of UI/UX needs
- Two font families:
broken(outline) andbroken_filled(filled) - Zero runtime dependencies — just the built-in
flutter/widgets.dart - Lightweight custom TTF fonts
const-friendlyIconDataconstants for compile-time safety- Cross-platform consistent rendering
Project Structure #
prithbrokenicons/
├── lib/
│ ├── prith_broken_icons.dart # The icon library (PrithBrokenIcons class)
│ └── fonts/
│ ├── broken.ttf # Outline icon font family "broken"
│ └── broken_filled.ttf # Filled icon font family "broken_filled"
├── example/
│ └── main.dart # Example app
└── pubspec.yaml
Getting Started #
1. Add the dependency #
Add prithbrokenicons to your pubspec.yaml:
dependencies:
prithbrokenicons: ^1.0.3
Then run:
flutter pub get
2. Usage in your code #
Import the icon library:
import 'package:prithbrokenicons/prith_broken_icons.dart';
Then use icons anywhere in your widgets:
// Basic usage
Icon(PrithBrokenIcons.home)
// With size and color
Icon(
PrithBrokenIcons.settings,
size: 32,
color: Colors.deepPurple,
)
// Filled variant (like/dislike filled icons)
Icon(PrithBrokenIcons.like_filled)
Icon(PrithBrokenIcons.dislike_filled)
// Inside buttons
ElevatedButton.icon(
onPressed: () {},
icon: const Icon(PrithBrokenIcons.add),
label: const Text('Add'),
)
3. Example: Icon grid #
static const List<IconData> icons = [
PrithBrokenIcons.home,
PrithBrokenIcons.settings,
PrithBrokenIcons.user,
PrithBrokenIcons.heart,
PrithBrokenIcons.star,
PrithBrokenIcons.wallet,
];
// Render
Icon(icons[index], size: 36)
Font Setup #
The fonts are bundled inside the package under lib/fonts/ and declared in the
package's pubspec.yaml with the correct fontPackage parameter. You do NOT
need to manually add the fonts to your app's pubspec.yaml. Simply add the
dependency and import — icons will render correctly on all platforms.
If you copy this library into another project (instead of using it as a pub
dependency), ensure your pubspec.yaml includes:
flutter:
uses-material-design: true
fonts:
- family: broken
fonts:
- asset: lib/fonts/broken.ttf
- family: broken_filled
fonts:
- asset: lib/fonts/broken_filled.ttf
Icon Categories #
The icon set spans a huge variety of categories, including (but not limited to):
- Actions: add, delete, edit, save, download, upload, refresh, share
- Arrows: up, down, left, right, swap, circle, square variants
- Communication: message, call, chat, email, notification, bell
- Media: music, video, play, pause, stop, camera, gallery
- Finance: wallet, card, money, bank, receipt, coin, dollar
- User & Profile: user, profile, people, security, lock, login, logout
- Business & Files: document, folder, briefcase, bookmark, clipboard
- Tech: mobile, monitor, cpu, cloud, wifi, bluetooth, data
- Transport: car, bus, truck, airplane, ship, gas-station
- Weather & Nature: sun, moon, cloud, snow, wind, tree
- UI Elements: star, heart, like, menu, settings, grid, filter
- And many more...
Naming Convention #
- Icon constants use snake_case (e.g.,
PrithBrokenIcons.arrow_down) - Variants are suffixed with
_1,_2,_3(e.g.,PrithBrokenIcons.home_1) - Filled versions of outline icons use the
_filledsuffix (e.g.,like_filled)
License #
This package is released under the MIT License. See the LICENSE file for details.
Note: The underlying Broken Icons font set follows its own license — please review the font's licensing terms before redistributing it separately or using it commercially.