Skip to content

Releases: O-Nics/amazing_icons

3.1.1

Choose a tag to compare

@O-Nics O-Nics released this 10 Nov 20:05

New Features & Bug Fixes

New AI-Enhanced Icons ✨

Added 6 new AI-themed icons across all styles (Outlined, Filled, Broken, Bulk, TwoTone):

  • brushAi - AI-powered brush/painting tool
  • cameraAi - AI camera features
  • emailAi - AI email assistance
  • galleryAi - AI gallery/image management
  • microphoneAi - AI voice/audio features
  • penAi - AI writing assistant
  • searchAi - AI-powered search

Bug Fixes 🔧

  • Icon Naming Corrections: Fixed numerous typos in icon names across all styles

    Outlined/Filled/Broken Icons:

    • brifecaseCrossbriefcaseCross
    • brifecaseTickbriefcaseTick
    • brifecaseTimerbriefcaseTimer
    • bulidingbuilding2
    • trushSquaretrashSquare
    • userCirceAdduserCircleAdd
    • voiceCriclevoiceCircle
    • bootsrapbootstrap

    Payment Icons:

    • etheriumethereum
    • Lightcoinlitecoin

    Note: These are breaking changes if you were using the misspelled names. Please update your code to use the corrected icon names.

  • Icon Search: Improved search functionality on the package website to include new AI icons and handle corrected icon names

3.1.0

Choose a tag to compare

@O-Nics O-Nics released this 08 Nov 21:42

New Features & Bug Fixes

New AI-Enhanced Icons ✨

Added 6 new AI-themed icons across all styles (Outlined, Filled, Broken, Bulk, TwoTone):

  • brushAi - AI-powered brush/painting tool
  • cameraAi - AI camera features
  • emailAi - AI email assistance
  • galleryAi - AI gallery/image management
  • microphoneAi - AI voice/audio features
  • penAi - AI writing assistant
  • searchAi - AI-powered search

Bug Fixes 🔧

  • Icon Naming Corrections: Fixed numerous typos in icon names across all styles

    Outlined/Filled/Broken Icons:

    • brifecaseCrossbriefcaseCross
    • brifecaseTickbriefcaseTick
    • brifecaseTimerbriefcaseTimer
    • bulidingbuilding2
    • trushSquaretrashSquare
    • userCirceAdduserCircleAdd
    • voiceCriclevoiceCircle
    • bootsrapbootstrap

    Bulk Icons (Background/Foreground):

    • brifecaseCrossBg/FgbriefcaseCrossBg/Fg
    • brifecaseTickBg/FgbriefcaseTickBg/Fg
    • brifecaseTimerBg/FgbriefcaseTimerBg/Fg
    • bulidingBg/Fgbuilding2Bg/Fg
    • trushSquareBg/FgtrashSquareBg/Fg
    • userCirlceAddBg/FguserCircleAddBg/Fg
    • voiceCricleBg/FgvoiceCircleBg/Fg
    • bootsrapBg/FgbootstrapBg/Fg

    Payment Icons:

    • etheriumethereum
    • Lightcoinlitecoin

    Note: These are breaking changes if you were using the misspelled names. Please update your code to use the corrected icon names.

  • Icon Search: Improved search functionality on the package website to include new AI icons and handle corrected icon names

3.0.1

Choose a tag to compare

@O-Nics O-Nics released this 14 Oct 05:10
  • Update README & add Icon License Attribution file

3.0.0

Choose a tag to compare

@O-Nics O-Nics released this 14 Oct 04:45
75e54ad

Package Size Optimization & Code Quality*

Breaking Changes

  • Country Flags Removed: All country flag icons have been completely removed from the package

    • Significantly reduces package size for users who don't need country flags
    • Migration: Use the dedicated country_flags package or similar alternatives
    • See migration guide below for replacement code
  • Payment Icons: File naming standardized to camelCase

    • Renamed: alipayaliPay, bancontactbanContact, bitpaybitPay
    • Renamed: mastercardmasterCard, paysafepaySafe, webmoneywebMoney
    • No API changes required (methods already used camelCase)
  • Other Icons: File naming standardized to camelCase

New Features

  • Optimized Selective Imports: Import only the icon styles you need to reduce compiled code size

    import 'package:amazing_icons/outlined.dart';  // Only outlined icons
    import 'package:amazing_icons/filled.dart';    // Only filled icons
    import 'package:amazing_icons/broken.dart';    // Only broken icons
    import 'package:amazing_icons/bulk.dart';      // Only bulk icons
    import 'package:amazing_icons/twotone.dart';   // Only twotone icons
    import 'package:amazing_icons/payment.dart';   // Only payment icons
  • Comprehensive API Documentation: All public methods now include detailed documentation

Package Optimization

  • Removed unnecessary generator and tooling files from published package
  • Removed demo assets (screenshots, GIFs) to reduce package size
  • Cleaned up font generation artifacts (.json files)
  • Optimized code structure and imports

Migration Guide from v2.0.0

Country Flags (Removed):

// Old (v2.x)
AmazingIconCountry.fromCountryCode(countryCode: 'fr', size: 25, shape: IconShape.rounded)

// New (v3.0) - Use dedicated package instead
// Add to pubspec.yaml: country_flags: ^3.0.0
import 'package:country_flags/country_flags.dart';
CountryFlag.fromCountryCode('FR', height: 25, width: 35, shape: BoxShape.rectangle, borderRadius: 8)

Optimized Imports (Recommended):

// Instead of importing everything
import 'package:amazing_icons/amazing_icons.dart';  // Still works but less optimal

// Import only what you need for better tree-shaking
import 'package:amazing_icons/outlined.dart';
import 'package:amazing_icons/bulk.dart';

2.0.0

Choose a tag to compare

@O-Nics O-Nics released this 10 Oct 12:47
67aa643

Amazing Icons 2.0.0 - Performance Revolution 🚀

We're excited to announce Amazing Icons 2.0.0, a major release focused on performance optimization and modern rendering techniques!

🎯 What's New

⚡ 10x Performance Boost for Bulk & TwoTone Icons

Bulk and TwoTone icons now use icon fonts instead of SVG, delivering:

  • 10x faster rendering - instant display with no parsing overhead
  • Lower memory usage - native icon rendering by Flutter
  • Smaller app size - compact font files instead of thousands of SVG assets
  • Smooth animations - no lag when displaying multiple icons

🎨 New Customizable Opacity Control

Fine-tune the depth effect of Bulk and TwoTone icons:

// Subtle effect
AmazingIconBulk.home(size: 24, color: Colors.blue, opacity: 0.2)

// Default effect
AmazingIconBulk.home(size: 24, color: Colors.blue, opacity: 0.4)

// Strong effect
AmazingIconBulk.home(size: 24, color: Colors.blue, opacity: 0.6)

🏳️ Enhanced Country Flags with Shape Options

Country flags now support 3 shape styles:

// Circular flags
AmazingIconCountry.fromCountryCode(countryCode: "fr", size: 30, shape: IconShape.circle)

// Rounded corners (default)
AmazingIconCountry.fromCountryCode(countryCode: "us", size: 30, shape: IconShape.rounded)

// Sharp corners
AmazingIconCountry.fromCountryCode(countryCode: "jp", size: 30, shape: IconShape.sharp)

💳 Optimized Payment Icons

Payment icons migrated to jovial_svg with .si format for:

  • Faster loading times
  • Reduced memory footprint
  • Better web compatibility

🔄 Breaking Changes

This is a major version with API changes. Please review the migration guide below.

API Changes Summary

Icon Type Old (v1.x) New (v2.0)
Bulk Icons SvgBulk.home(...) AmazingIconBulk.home(size: 24, color: Colors.blue, opacity: 0.4)
TwoTone Icons SvgTwoTone.heart(...) AmazingIconTwotone.heart(size: 24, color: Colors.red, opacity: 0.4)
Country Flags SvgCountry.fromCountryCode("fr", ...) AmazingIconCountry.fromCountryCode(countryCode: "fr", size: 25)
Payment Icons SvgPayment.visa(...) AmazingIconPayment.visa(size: 50)

Detailed Breaking Changes

1. Bulk & TwoTone Icons (Icon Fonts)

Before (v1.x):

SvgBulk.home(size: 24, color: Colors.blue)
SvgTwoTone.heart(size: 24, color: Colors.red)

After (v2.0):

AmazingIconBulk.home(size: 24, color: Colors.blue, opacity: 0.4)
AmazingIconTwotone.heart(size: 24, color: Colors.red, opacity: 0.4)

Changes:

  • ✅ Returns Widget instead of SvgIcon
  • ✅ New opacity parameter (default: 0.4)
  • ✅ Uses dual IconData stack for rendering
  • ✅ No longer requires flutter_svg

2. Country Flags (Jovial SVG)

Before (v1.x):

SvgCountry.fromCountryCode("fr", size: 25, shape: IconShape.rounded)

After (v2.0):

AmazingIconCountry.fromCountryCode(
  countryCode: "fr",
  size: 25,
  shape: IconShape.rounded
)

Changes:

  • ✅ Named parameters required
  • ✅ Uses .si format for compact storage
  • ✅ Powered by jovial_svg for better performance

3. Payment Icons (Jovial SVG)

Before (v1.x):

SvgPayment.visa(size: 50)

After (v2.0):

AmazingIconPayment.visa(size: 50)

Changes:

  • ✅ Class renamed
  • ✅ Uses .si format for compact storage
  • ✅ Powered by jovial_svg for better performance

4. Package Structure

All icon classes moved to lib/src/ directory.

Recommended import:

import 'package:amazing_icons/amazing_icons.dart';

📦 Dependencies

  • Added: jovial_svg: ^1.1.24 - High-performance SVG rendering for Country and Payment icons
  • Removed: flutter_svg: ^2.0.10+1 - No longer needed for Bulk and TwoTone icons

🚀 Migration Guide

Step 1: Update pubspec.yaml

dependencies:
  amazing_icons: ^2.0.0

Run:

flutter pub upgrade

Step 2: Update Bulk Icons

Find & Replace:

# Old pattern
SvgBulk.iconName(size: X, color: Y)

# New pattern
AmazingIconBulk.iconName(size: X, color: Y, opacity: 0.4)

Step 3: Update TwoTone Icons

Find & Replace:

# Old pattern
SvgTwoTone.iconName(size: X, color: Y)

# New pattern
AmazingIconTwotone.iconName(size: X, color: Y, opacity: 0.4)

Step 4: Update Country Flags

Find & Replace:

# Old pattern
SvgCountry.fromCountryCode("XX", size: Y)

# New pattern
AmazingIconCountry.fromCountryCode(countryCode: "XX", size: Y)

Step 5: Update Payment Icons

Find & Replace:

# Old pattern
SvgPayment.iconName(size: X)

# New pattern
AmazingIconPayment.iconName(size: X)

Step 6: Clean & Rebuild

flutter clean
flutter pub get
flutter run

📊 Performance Comparison

Metric v1.x (SVG) v2.0 (Icon Fonts) Improvement
Rendering Speed ~50ms ~5ms 10x faster
Memory Usage ~2MB for 100 icons ~200KB for 100 icons 90% reduction
Package Size ~8MB ~3MB 62% smaller
First Paint 100-200ms Instant Instant

🐛 Bug Fixes

  • Fixed clip-path issues in some SVG country flags
  • Improved web compatibility for all icon types
  • Better rendering on low-end devices

📚 Documentation

  • Added comprehensive API documentation to all icon classes
  • Updated README with new examples
  • Enhanced code comments for better IntelliSense support

🙏 Thank You

Thank you to all contributors and users who provided feedback to make this release possible!

🔗 Resources


Full Changelog: https://github.com/O-Nicks/amazing_icons/blob/master/CHANGELOG.md

1.2.1

Choose a tag to compare

@O-Nics O-Nics released this 04 Oct 13:26

Full Changelog: 1.2.0...1.2.1

1.2.0

Choose a tag to compare

@O-Nics O-Nics released this 04 Oct 13:07

What's Changed

  • Refactor/country flags by @O-Nicks in #1

New Contributors

  • @O-Nicks made their first contribution in #1

Full Changelog: 1.1.2...1.2.0

1.1.2

Choose a tag to compare

@O-Nics O-Nics released this 03 Oct 15:28

Full Changelog: 1.1.1...1.1.2

1.1.1

Choose a tag to compare

@O-Nics O-Nics released this 03 Oct 15:26

Full Changelog: 1.1.0...1.1.1

1.1.0

Choose a tag to compare

@O-Nics O-Nics released this 03 Oct 15:08

Full Changelog: 1.0.0...1.1.0