arcane_helper_utils
Provides a variety of helpful utilities and extensions for Flutter and Dart.
What this package is like to depend on
Last release 2 months ago
01 Jun 2026
Ships unpredictably
gaps range from 8 days to 9 months
Nearly every release is documented
notes for 30 of 31 stable releases
Nothing withdrawn
no release was ever pulled
2 years old
31 releases · first in 2024
2 releases in the last 12 months
see the full history below
Release timeline
31 releases · Sep 2024 to Jun 2026Releases
latest 31-
1.4.801 Jun 2026Release notes
Open source →- Added extension methods for recursive JSON-safe serialization and deserialization of nested maps/lists:
toJsonValue()/fromJsonValue()toJsonMap()/fromJsonMap()toJsonList()/fromJsonList()
- Added extension methods for recursive JSON-safe serialization and deserialization of nested maps/lists:
-
1.4.717 Sep 2025Release notes
Open source →- Added the
isExpiredandexpiresSoongetters to JWT tokens.
Example:
String token = "your.jwt.token"; bool isExpired = token.isExpired; bool expiresSoon = token.expiresSoon; - Added the
-
1.4.622 Jul 2025 -
1.4.516 May 2025 -
1.4.416 May 2025 -
1.4.316 May 2025 -
1.4.216 May 2025Release notes
Open source →- Added the
isLeapYearextension to theDateTimeandintobjects. - Added the
FixedSizeListclass. See the README and examples for details.
- Added the
-
1.4.115 Apr 2025Release notes
Open source →- Added a
Listequality extension,equals. - Fixed an issue with the
Listextensionuniquethat may have caused null-safety issues.
- Added a
-
1.4.001 Apr 2025Release notes
Open source →- [BREAKING] JWT-related extensions have been reworked.
Old:
String token = "your.jwt.token"; DateTime? expiry = token.jwtExpiryTime(); String? userId = token.jwtUserId(); String? email = token.jwtEmail();New:
String token = "your.jwt.token"; DateTime? expiry = token.jwt.expiryTime; String? userId = token.jwt.userId; String? email = token.jwt.email; // Added: JwtPayload? token.jwt; String? givenName = token.jwt.givenName; String? familyName = token.jwt.familyName;Additionally, the exceptions thrown when parsing an invalid JWT have been updated.
String email = "invalid".jwtEmail() // Previously threw Exception("invalid token") String email = "invalid".jwt.email // Now throws InvalidTokenException() String email = "".jwtEmail() // Previously threw Exception("invalid payload") String email = "".jwt.email // Now throws InvalidPayloadException() -
1.3.225 Mar 2025Release notes
Open source →- Added
isEmptyOrNullandisNotEmptyOrNullextensions forListandStringobjects. These extensions are identical toisNullOrEmptyandisNotNullOrEmpty, respectively. - Fixed a bug in the
DateTimeextension that caused incorrect results when comparing dates usingisToday.
- Added
-
1.3.125 Mar 2025Release notes
Open source →- Added the
isNullOrEmptyandisNotNullOrEmptyextensions forListobjects. - Fixed a bug in the
Tickerextension that prevented intervals shorter than 1 second from being used. - [chore] Added unit tests for all extensions and utilities in the package.
- Added the
-
1.3.006 Mar 2025Release notes
Open source →- Added a non-breaking space character to
CommonStringasCommonString.nbsp - Updated package dependencies
- Added a non-breaking space character to
-
1.2.616 Jan 2025Release notes
Open source →-
Added the
printValue()extension. TheprintValue()extension can be used to print a value to the console before returning that same value.Example:
// Print the `textTheme` object to the console before returning it Text( 'Hello, world', style: Theme.of(context).textTheme.printValue().headlineMedium, ),
-
-
1.2.506 Nov 2024Release notes
Open source →- Null
Strings being manipulated should returnnullinstead of an emptyString
- Null
-
1.2.406 Nov 2024 -
1.2.306 Nov 2024 -
1.2.206 Nov 2024Release notes
Open source →- Added additional
Stringmanipulation utilities, including:capitalizeWords: Capitalizes the first letter of each word in the string.spacePascalCase: Adds spaces between words in a PascalCase string.
- Added additional
-
1.2.104 Nov 2024 -
1.2.004 Nov 2024 -
1.1.330 Oct 2024Release notes
Open source →- Removes
Colorextension due to an incompatibility with Flutter. Sorry, @rania-run!
- Removes
-
1.1.230 Oct 2024 -
1.1.129 Oct 2024Release notes
Open source →- Added
Colorextension for luminance. Thanks, @rania-run! - Fixed a bug in the
splitByLengthextension onString
- Added
-
1.1.010 Oct 2024Release notes
Open source →- [BREAKING] Removed
Unfocuserwidget to ensure pure Dart compatibility.
To continue using
Unfocuser, addunfocuser: ^1.0.0to your pubspec.yaml. - [BREAKING] Removed
-
1.0.407 Oct 2024 -
1.0.4+107 Oct 2024Nothing published for this version
-
1.0.304 Oct 2024 -
1.0.3+104 Oct 2024 -
1.0.3+204 Oct 2024 -
1.0.201 Oct 2024 -
1.0.110 Sep 2024 -
1.0.010 Sep 2024