my_utility 🛠️
A comprehensive package packed with utility classes and extension methods to ease everyday development tasks. Compatible with Dart 3 and major platforms including Android, iOS, Linux, macOS, Windows, and Flutter.
Only supports Flutter version 3.13.9
or later.
Features
-
🧩 Extension methods for
DateTime
,Iterable
,String
,File
,Directory
,Stream
, and more. -
🤖 A suite of CLI tools (
DartCliTool
,GitCliTool
,FlutterCliTool
, etc.) for manipulating toolchains. -
🎨 Colorized printing utilities for enhanced console output.
-
⛓️ Union types (up to 5 values), typedef helpers, and deep-copy mixin support.
-
📊 Helpers for JSON serialization, semantic versioning, data units, math tolerance, plus async/future utilities.
API Overview
Key libraries include:
Area | Libraries / Extensions |
---|---|
CLI Tools | cli/dart.dart , cli/git.dart , cli/flutter.dart , etc. |
Extensions | DateTime , String , Iterable , File , etc. |
IO Helpers | colorized_print , interactive , copy , print , etc. |
Async utils | call_once , result_future , deep_copy_mixin |
Data & Math | data_units , double_with_tolerance , semver , yaml_map_to_json_map |
Union types | union2 –union5 , helpers like typedefs/convert_callback |
Explore the full API Docs on pub.dev.
Why Choose my_utility?
- Unified toolkit: a one-stop-shop for common Dart utilities.
- Modular design: import only what you need.
- Well-tested & documented: comprehensive API and version history.
License
Distributed under the GNU LGPL 2.1 license.
Contribution & Support
Contributions are welcome! Please report issues or participate in discussions via the GitLab repository.
Libraries
- ascii_ranges
- async
- async/call_once
- async/delay
- async/result_future
- async/scheduled_future
- cli
- cli/chmod
- cli/cli_tool
- cli/dart
- cli/dotnet
- cli/elixir
- cli/elixir_mix
- cli/ffmpeg
- cli/ffprobe
- cli/flutter
- cli/fvm
- cli/git
- cli/mariadb
- cli/mariadb_dump
- cli/node
- cli/npm
- cli/npx
- cli/pandoc
- cli/powershell
- dartx
- data_units
- date
- errors
- errors/argument_error_utils
- errors/generic_error
- errors/implementation_error
- errors/result_error
- errors/unreachable_code_error
- exceptions
- exceptions/out_of_tries
- extensions
- extensions/binary_prefix
- extensions/completer
- extensions/datetime
- extensions/deep_copy
- extensions/directory
- extensions/double
- extensions/duration
- extensions/file
- extensions/file_stat
- extensions/file_stat_permission
- extensions/file_system_entity
- extensions/future
- extensions/int
- extensions/io_sink
- extensions/iterable
- extensions/iterable_int
- extensions/map
- extensions/random
- extensions/stream
- extensions/string
- extensions/symbol
- functions/is_nullable_type
- functions/yaml_map_to_json_map
- io
- io/check
- io/colorized_print
- io/copy
- io/file_stat_permission
- io/indented_string_buffer
- io/interactive
- io/isolated_stdin
- io/print
- io/stdin
- io/utils
- json_converters
- json_converters/duration
- json_converters/json_enum_converter
- json_converters/json_list_converter
- json_converters/semver
- json_converters/version
- math
- math/double_with_tolerance
- mixins
- mixins/deep_copy_mixin
- printers
- reflection
- reflection/program_info
- result
- semver
- test
- test/completes
- test/expect
- test/test
- typedefs
- typedefs/convert_callback
- typedefs/copy_factory
- typedefs/result_callback
- typedefs/value2_callback
- typedefs/value3_callback
- typedefs/value_callback
- typedefs/void_callback
- union
- union/union2
- union/union3
- union/union4
- union/union5