| <!-- [](https://github.com/dart-lang/tools/actions/workflows/dart.yml) --> |
| |
| ## Overview |
| |
| This repository is home to tooling related Dart packages. Generally, this means |
| packages published through the |
| [tools.dart.dev](https://pub.dev/publishers/tools.dart.dev) publisher that |
| don't naturally belong to other topic monorepos (like |
| [dart-lang/build](https://github.com/dart-lang/build), |
| [dart-lang/test](https://github.com/dart-lang/test), or |
| [dart-lang/shelf](https://github.com/dart-lang/shelf)). |
| |
| ## Packages |
| |
| | Package | Description | Issues | Version | |
| | --- | --- | --- | --- | |
| | [bazel_worker](pkgs/bazel_worker/) | Protocol and utilities to implement or invoke persistent bazel workers. | [][bazel_worker_issues] | [](https://pub.dev/packages/bazel_worker) | |
| | [benchmark_harness](pkgs/benchmark_harness/) | The official Dart project benchmark harness. | [][benchmark_harness_issues] | [](https://pub.dev/packages/benchmark_harness) | |
| | [boolean_selector](pkgs/boolean_selector/) | A flexible syntax for boolean expressions, based on a simplified version of Dart's expression syntax. | [][boolean_selector_issues] | [](https://pub.dev/packages/boolean_selector) | |
| | [browser_launcher](pkgs/browser_launcher/) | Provides a standardized way to launch web browsers for testing and tools. | [][browser_launcher_issues] | [](https://pub.dev/packages/browser_launcher) | |
| | [cli_config](pkgs/cli_config/) | A library to take config values from configuration files, CLI arguments, and environment variables. | [][cli_config_issues] | [](https://pub.dev/packages/cli_config) | |
| | [cli_util](pkgs/cli_util/) | A library to help in building Dart command-line apps. | [][cli_util_issues] | [](https://pub.dev/packages/cli_util) | |
| | [clock](pkgs/clock/) | A fakeable wrapper for dart:core clock APIs. | [][clock_issues] | [](https://pub.dev/packages/clock) | |
| | [code_builder](pkgs/code_builder/) | A fluent, builder-based library for generating valid Dart code. | [][code_builder_issues] | [](https://pub.dev/packages/code_builder) | |
| | [coverage](pkgs/coverage/) | Coverage data manipulation and formatting | [][coverage_issues] | [](https://pub.dev/packages/coverage) | |
| | [csslib](pkgs/csslib/) | A library for parsing and analyzing CSS (Cascading Style Sheets). | [][csslib_issues] | [](https://pub.dev/packages/csslib) | |
| | [extension_discovery](pkgs/extension_discovery/) | A convention and utilities for package extension discovery. | [][extension_discovery_issues] | [](https://pub.dev/packages/extension_discovery) | |
| | [file](pkgs/file/) | A pluggable, mockable file system abstraction for Dart. | [][file_issues] | [](https://pub.dev/packages/file) | |
| | [file_testing](pkgs/file_testing/) | Testing utilities for package:file. | [][file_testing_issues] | [](https://pub.dev/packages/file_testing) | |
| | [graphs](pkgs/graphs/) | Graph algorithms that operate on graphs in any representation. | [][graphs_issues] | [](https://pub.dev/packages/graphs) | |
| | [html](pkgs/html/) | APIs for parsing and manipulating HTML content outside the browser. | [][html_issues] | [](https://pub.dev/packages/html) | |
| | [io](pkgs/io/) | Utilities for the Dart VM Runtime including support for ANSI colors, file copying, and standard exit code values. | [][io_issues] | [](https://pub.dev/packages/io) | |
| | [json_rpc_2](pkgs/json_rpc_2/) | Utilities to write a client or server using the JSON-RPC 2.0 spec. | [][json_rpc_2_issues] | [](https://pub.dev/packages/json_rpc_2) | |
| | [markdown](pkgs/markdown/) | A portable Markdown library written in Dart that can parse Markdown into HTML. | [][markdown_issues] | [](https://pub.dev/packages/markdown) | |
| | [mime](pkgs/mime/) | Utilities for handling media (MIME) types, including determining a type from a file extension and file contents. | [][mime_issues] | [](https://pub.dev/packages/mime) | |
| | [oauth2](pkgs/oauth2/) | A client library for authenticating with a remote service via OAuth2 on behalf of a user, and making authorized HTTP requests with the user's OAuth2 credentials. | [][oauth2_issues] | [](https://pub.dev/packages/oauth2) | |
| | [package_config](pkgs/package_config/) | Support for reading and writing Dart Package Configuration files. | [][package_config_issues] | [](https://pub.dev/packages/package_config) | |
| | [pool](pkgs/pool/) | Manage a finite pool of resources. Useful for controlling concurrent file system or network requests. | [][pool_issues] | [](https://pub.dev/packages/pool) | |
| | [pub_semver](pkgs/pub_semver/) | Versions and version constraints implementing pub's versioning policy. This is very similar to vanilla semver, with a few corner cases. | [][pub_semver_issues] | [](https://pub.dev/packages/pub_semver) | |
| | [pubspec_parse](pkgs/pubspec_parse/) | Simple package for parsing pubspec.yaml files with a type-safe API and rich error reporting. | [][pubspec_parse_issues] | [](https://pub.dev/packages/pubspec_parse) | |
| | [source_map_stack_trace](pkgs/source_map_stack_trace/) | A package for applying source maps to stack traces. | [][source_map_stack_trace_issues] | [](https://pub.dev/packages/source_map_stack_trace) | |
| | [source_maps](pkgs/source_maps/) | A library to programmatically manipulate source map files. | [][source_maps_issues] | [](https://pub.dev/packages/source_maps) | |
| | [source_span](pkgs/source_span/) | Provides a standard representation for source code locations and spans. | [][source_span_issues] | [](https://pub.dev/packages/source_span) | |
| | [sse](pkgs/sse/) | Provides client and server functionality for setting up bi-directional communication through Server Sent Events (SSE) and corresponding POST requests. | [][sse_issues] | [](https://pub.dev/packages/sse) | |
| | [stack_trace](pkgs/stack_trace/) | A package for manipulating stack traces and printing them readably. | [][stack_trace_issues] | [](https://pub.dev/packages/stack_trace) | |
| | [stream_channel](pkgs/stream_channel/) | An abstraction for two-way communication channels based on the Dart Stream class. | [][stream_channel_issues] | [](https://pub.dev/packages/stream_channel) | |
| | [stream_transform](pkgs/stream_transform/) | A collection of utilities to transform and manipulate streams. | [][stream_transform_issues] | [](https://pub.dev/packages/stream_transform) | |
| | [string_scanner](pkgs/string_scanner/) | A class for parsing strings using a sequence of patterns. | [][string_scanner_issues] | [](https://pub.dev/packages/string_scanner) | |
| | [term_glyph](pkgs/term_glyph/) | Useful Unicode glyphs and ASCII substitutes. | [][term_glyph_issues] | [](https://pub.dev/packages/term_glyph) | |
| | [test_reflective_loader](pkgs/test_reflective_loader/) | Support for discovering tests and test suites using reflection. | [][test_reflective_loader_issues] | [](https://pub.dev/packages/test_reflective_loader) | |
| | [timing](pkgs/timing/) | A simple package for tracking the performance of synchronous and asynchronous actions. | [][timing_issues] | [](https://pub.dev/packages/timing) | |
| | [unified_analytics](pkgs/unified_analytics/) | A package for logging analytics for all Dart and Flutter related tooling to Google Analytics. | [][unified_analytics_issues] | [](https://pub.dev/packages/unified_analytics) | |
| | [watcher](pkgs/watcher/) | A file system watcher. It monitors changes to contents of directories and sends notifications when files have been added, removed, or modified. | [][watcher_issues] | [](https://pub.dev/packages/watcher) | |
| | [yaml](pkgs/yaml/) | A parser for YAML, a human-friendly data serialization standard | [][yaml_issues] | [](https://pub.dev/packages/yaml) | |
| | [yaml_edit](pkgs/yaml_edit/) | A library for YAML manipulation with comment and whitespace preservation. | [][yaml_edit_issues] | [](https://pub.dev/packages/yaml_edit) | |
| |
| [bazel_worker_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Abazel_worker |
| [benchmark_harness_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Abenchmark_harness |
| [boolean_selector_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Aboolean_selector |
| [browser_launcher_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Abrowser_launcher |
| [cli_config_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Acli_config |
| [cli_util_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Acli_util |
| [clock_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Aclock |
| [code_builder_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Acode_builder |
| [coverage_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Acoverage |
| [csslib_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Acsslib |
| [extension_discovery_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Aextension_discovery |
| [file_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Afile |
| [file_testing_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Afile_testing |
| [graphs_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Agraphs |
| [html_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Ahtml |
| [io_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Aio |
| [json_rpc_2_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Ajson_rpc_2 |
| [markdown_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Amarkdown |
| [mime_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Amime |
| [oauth2_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Aoauth2 |
| [package_config_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Apackage_config |
| [pool_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Apool |
| [pub_semver_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Apub_semver |
| [pubspec_parse_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Apubspec_parse |
| [source_map_stack_trace_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Asource_map_stack_trace |
| [source_maps_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Asource_maps |
| [source_span_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Asource_span |
| [sse_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Asse |
| [stack_trace_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Astack_trace |
| [stream_channel_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Astream_channel |
| [stream_transform_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Astream_transform |
| [string_scanner_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Astring_scanner |
| [term_glyph_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Aterm_glyph |
| [test_reflective_loader_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Atest_reflective_loader |
| [timing_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Atiming |
| [unified_analytics_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Aunified_analytics |
| [watcher_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Awatcher |
| [yaml_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Ayaml |
| [yaml_edit_issues]: https://github.com/dart-lang/tools/issues?q=is%3Aissue+is%3Aopen+label%3Apackage%3Ayaml_edit |
| |
| ## Publishing automation |
| |
| For information about our publishing automation and release process, see |
| https://github.com/dart-lang/ecosystem/wiki/Publishing-automation. |
| |
| For additional information about contributing, see our |
| [contributing](CONTRIBUTING.md) page. |