Description
Description
The donation consists of two closely-related Dart packages now published on pub.dev:
• dartastic_opentelemetry – a full OpenTelemetry SDK for Dart that implements all MUST, SHOULD and most MAY requirements of the specification (traces ✓, metrics ✓, logs coming).
• dartastic_opentelemetry_api – the stand-alone OpenTelemetry API for Dart, providing the specification-mandated no-op behaviour when an SDK is absent.
Together they deliver cross-platform OpenTelemetry support for servers, desktop, mobile, and (soon) web/wasm.
Both packages are released under the Apache 2.0 license, come with extensive unit-tests, protobuf stubs generated from the canonical OTLP definitions, and exporters for OTLP/gRPC and OTLP/HTTP.
We separated the API and SDK in two repositories for strictness. If the GC wishes to merge them into one, we are willing to do so.
Benefits to the OpenTelemetry community
This contribution fills in the only remaining language gap – Dart is the last top-15 language without an officially maintained OTel SDK; this donation brings parity with other ecosystems.
Moreover, Flutter, written in Dart, is the most popular cross-platform application development platform. This contribution covers only Dart. We will separately contribute a Flutter OTel SDK, which applies the Dart OTel SDK to Flutter applications, as we work on it's maturity and alignment with other OTel libraries for mobile development (Android, iOS). This contribution will aid Dart servers and pave the way to accelerates mobile & frontend coverage.
The contribution ensures spec compliance & governance – moving to the CNCF/OpenTelemetry org guarantees that future spec changes (e.g., Logs, Profiling) land quickly and consistently.
This contribution enables community growth – Dart and Flutter engineers can contribute under the same processes and CLA they already use for other OTel repos instead of an external project.
Reasons for donation
We are donating this Dart SDK:
- To avoid fragmentation: keeping a core language implementation outside the org risks divergent APIs and hindered spec evolution. There are multiple abandoned or failed OTel libraries currently in pub.dev
- To ensure long-term sustainability: CNCF governance, security processes, CI, and release automation provide guarantees a single-vendor repo cannot.
- To enable wider contribution & review from the OTel language-SIGs and spec authors, ensuring interoperability, compatibility test inclusion, and registry listing.
We contributed after review and discussion with César Munoz who leads the development of Android OTel SDK.
Repository
https://github.com/MindfulSoftwareLLC/dartastic_opentelemetry
Existing usage
Dartastic is being evaluated by a handful of large enterprises mostly Elastic customers.
Maintenance
The author & current sole maintainer is Michael Bushe (GitHub @michaelbushe)
Michael's company, Mindful Software, will dedicate Michael's time.
Mindful Software has created Dartastic.io to help fund maintenance through subscriptions to early access packages, support, consulting, training and a SaaS offering of o11y backends customized for Flutter.
Dartastic OTel development is also supported by SEMplicity, Inc., the largest Elastic consultancy.
We commit to follow OpenTelemetry CONTRIBUTING.md, triage SLAs, and attend SIG-language meetings.
Licenses
Apache 2.0
Trademarks
- “Dartastic” is an unregistered brand name of Mindful Software LLC; it is not a registered trademark. No transfer of trademark rights is required.
- We are willing to rename the packages to opentelemetry/opentelemetry_dart or opentelemetry/opentelemetry_api on pub.dev if the stale or abandoned placeholder package can be reassigned. We ask for GC guidance on this issue.
- We make no claim over the “OpenTelemetry” mark and will follow CNCF trademark policy.
Other notes
Though quite useful, this package is not 1.0 yet and there are holes we need to fill, like Zipkin. Logs are not implemented yet.