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 union2union5, 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/shared_stdin
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