avatar_maker 1.8.0
avatar_maker: ^1.8.0 copied to clipboard
A light-weight and highly customizable SVG avatar library for Flutter apps. Provides a Customizer Widget, CircleAvatar and other utility functions that are ready-to-use.
[Unreleased] #
1.8.0 23/08/2026 #
Added #
- feat: Add Persian (Farsi) localization support with complete translation strings
- feat: Add independent
widthandheightparameters toAvatarMakerAvatarfor flexible container sizing - feat: Add independent
svgWidthandsvgHeightparameters toAvatarMakerAvatarfor precise SVG rendering control - feat: Add
svgPaddingparameter toAvatarMakerAvatarfor custom padding around the avatar - feat: Add
borderparameter toAvatarMakerAvatarfor custom border styling
Updated #
- refactor: Update localization lookup to properly support Persian (fa) as a supported locale
1.7.0 21/06/2026 #
Added #
- feat: Add
onItemSelectedcallback toAvatarMakerCustomizerso consumers can observe unlocked item taps (e.g. for preview-then-apply flows). The selection is still applied immediately by default. - feat:
EffectCosmeticItem.buildWidgetaccepts an optionaloverrideColorsparameter so the chosen effect color is forwarded tocustomBuilder. - chore: Add test coverage threshold enforcement to CI workflow (default 100%).
Fixed #
- fix:
EffectCosmeticItemWithColornow respectsEffectCosmeticItem.customBuilderwhen anEffectColorCosmeticItemis selected. Previously, custom effects were silently replaced with the built-inCosmeticEffectWidgetwhenever an effect color was active. - fix:
PersistentAvatarMakerController.setJsonOptionsnow accepts the baseAvatarMakerControllertype instead of requiring thePersistentAvatarMakerControllersubtype. This removes the type-mismatch footgun betweenAvatarMakerControllerProvider(which exposes the base type) and the static helper.
Deprecated #
- chore:
BackgroundStylesenum is now@Deprecated. UseBackgroundCosmeticIteminstead. The enum will be removed in v2.0.0. No runtime behaviour change.
Tests #
- test: Add unit tests for
EffectCosmeticItem.buildWidgetoverrideColorspropagation andEffectCosmeticItemWithColorcustomBuilder delegation. - test: Add integration tests in
AvatarMakerAvatarfor the custom-effect + effect-color scenario. - test: Add type-signature tests for the widened
setJsonOptions. - test: Add callback tests for
AvatarMakerCustomizer.onItemSelected(fires, propagates correct args, skips locked items, backward compatible). - test: Add a static source-level test guarding the
@Deprecatedannotation onBackgroundStyles.
1.6.0 18/06/2026 #
Added #
- feat: Add
onItemSelectedcallback toAvatarMakerCustomizerso consumers can observe unlocked item taps (e.g. for preview-then-apply flows). The selection is still applied immediately by default.
Tests #
- feat: Add temporary locked-item preview support without mutating saved selections.
- feat: Disable
AvatarMakerSaveWidgetwhile a temporary preview is active. - feat: Add
usePreviewparameter toAvatarMakerAvatar(defaulttrue) so avatars that live outside the customizer context can opt out of rendering the controller's temporary preview state. When set tofalse, the avatar always reflects the saved selection even if a preview is active on the controller. - docs: Add cosmetic system integration documentation.
- example: Demonstrate cosmetic categories, animated effects, effect colors, custom effects, level/gold locking, and locked-item preview.
- example: Set
usePreview: falseon the home page avatar so locked-item previews activated inside the customizer do not leak onto the home screen. - test: Update tests and mocks for cosmetic categories, localization, and save-widget preview guard.
- test: Cover
AvatarMakerAvatarusePreview: true(default) andusePreview: falserendering behavior.
Updated #
- refactor: Remove direct
material_symbols_iconsdependency and use MaterialIconsin tests. - chore: Prepare version bump from
1.5.0to1.6.0for the cosmetic system release.
1.5.0 06/12/2025 #
1.4.0 01/12/2025 #
Added #
- feat: Added
lockWidgettoAvatarMakerCustomizerto allow custom widgets for locked items. - feat: Added
onTapLockedItemcallback toAvatarMakerCustomizerto handle taps on locked items. - docs: Updated documentation for item locking.
- example: Updated example app to demonstrate custom lock UI and interaction.
1.3.0 29/11/2025 #
1.2.0 21/11/2025 #
Added #
- chore: Update lib versions
- doc: Update documentation about property categories
- feat: Add
isPersistentControllermethod in the controller to let some widgets know if they must be displayed or not. (Like save or reset button in with a non persistant controller)
Updated #
- chore: Update example bootstrapping to a not deprecated solution
1.1.0 27/06/2025 #
Breaking Changes #
- feat: move away from
getXtoproviderfor state management, introducingAvatarMakerControllerProvider. You will need to wrap your app withAvatarMakerControllerProviderto use the new architecture. - refactor: update the IDs of each SVG part to allow faster parsing. Existing avatar will be discarded.
Added #
- feat: introduce
AvatarMakerControllerto allow creating your own controller - feat: introduce
NonPersistentAvatarMakerControllerfor cases where you don't need the package to persist the avatar - test: improve tests
Updated #
- feat: update the architecture of each widget to allow injecting a custom controller
- refactor: rename
AvatarMakerControllertoPersistentAvatarMakerController
0.2.0 08/07/2024 #
0.1.0 30/06/2024 #
Added #
- New colors for facial hairs, hairs & outfits
- Documentation
- Localization
- English
- French
- Add customization of categories and properties
- Unit tests
Updated #
- Refactor and reorganize the code to match with RoadTripMoustache standards (#9)
- Documentation
- README.md
- Update dependencies
Fluttermoji legacy CHANGELOG #
1.0.2 26/03/2023 #
- Upgrades dependencies
1.0.0 15/02/2022 #
- Adds
FluttermojiThemeDataandFluttermojiSaveWidgetto the library. - Fixes some visual glithes in the appbar of the
FluttermojiCustomizer. - Minor internal refactoring.
- Updates dependency versions
- BREAKING CHANGES
- The customizer widget no longer has the top row with "Customize" and the save button, and the
showSaveWidgetproperty has been removed. - The widget's do not set to Material light/dark system theme automatically anymore. This must be implemented using the [theme] property.
- Refer the doc comments for more details.
- The customizer widget no longer has the top row with "Customize" and the save button, and the
0.2.3 03/12/2021 #
- Updates dependency versions
0.2.2 11/10/2021 #
- Adds toggle to show/hide save button widget in
FluttermojiCustomizerwidget.
[0.2.1] - 03/05/2021 #
- Fixes bug where preview and avatars don't revert to saved version after unsaved edits
- Adds
clearFluttermoji()to FluttermojiFunctions - Some optimizations
[0.2.0] - 08/04/2021 #
- Updates dependencies to their null-safe stable version
- Migrates package to Null safety
- Removes dead code
0.2.0-nullsafety.0 10/03/2021 #
- Updated dependencies to their null-safe version
- Migrated package to Null safety
- Remove dead code
0.1.2+1 30/01/2021 #
- (Hotfix) Cleared some lints for a cleaner code
0.1.2 19/01/2021 #
- Fixed a bug in decodeFluttermojifromString()
0.1.1 01/01/2021 #
- Added Material Dark theme support to FluttermojiCircleAvatar
- Added screenshots to the README.md
[0.1.0] - 24/12/2020 #
- Added documentation to many APIs and to the README.md as well.
- Created new utility functions to allow sharing of Fluttermojis to server/DB and decoding them for render using flutter_svg package.
- Fixed the bug on loading Fluttermoji on first launch.
- Fixed standalone customizer issues.
- Description updates
- Other minor changes and fixes.
0.0.1 23/12/2020 #
- Initial Release - documentation and instructions pending