Contents

Core libraries

Dart has a rich set of core libraries that provide essentials for many everyday programming tasks such as working on collections of objects (dart:collection), making calculations (dart:math), and encoding/decoding data (dart:convert). Additional APIs are available in commonly used packages.

Multi-platform libraries

The following table lists the Dart core libraries that work on all Dart platforms.

Library Notes
dart:core
Built-in types, collections, and other core functionality for every Dart program.
 
dart:async, package:async
Support for asynchronous programming, with classes such as Future and Stream.
package:async provides additional utilities around the Future and Stream types.
 
dart:collection, package:collection
Classes and utilities that supplement the collection support in dart:core.
package:collection provides further collection implementations and functions for working on and with collections.
 
dart:convert, package:convert
Encoders and decoders for converting between different data representations, including JSON and UTF-8.
package:convert provides additional encoders and decoders.
 
dart:developer
Interaction with developer tools such as the debugger and inspector.
Native JIT and dartdevc only
dart:math
Mathematical constants and functions, plus a random number generator.
 
dart:typed_data, package:typed_data
Lists that efficiently handle fixed sized data (for example, unsigned 8-byte integers) and SIMD numeric types.
package:typed_data provides further classes and functions working on typed data.
 

Native platform libraries

The following table lists the Dart core libraries that work on the Dart native platform (AOT- and JIT-compiled code).

Library Notes
dart:ffi, package:ffi
A foreign function interface that lets Dart code use native C APIs.
package:ffi contains utilities incl. support for converting Dart strings and C strings.
 
dart:io, package:io
File, socket, HTTP, and other I/O support for non-web applications.
package:io provides functionality including support for ANSI colors, file copying, and standard exit codes.
 
dart:isolate
Concurrent programming using isolates: independent workers similar to threads.
 
dart:mirrors
Basic reflection with support for introspection and dynamic invocation.
Experimental
Native JIT only (not Flutter)

Web platform libraries

The following table lists the Dart core libraries that work on the Dart web platform (code compiled to JavaScript).

Library Notes
dart:html
HTML elements and other resources for web-based applications.
 
dart:indexed_db
Client-side key-value store with support for indexes.
 
dart:js, dart:js_util, package:js
dart:js_util provides low-level primitives for interoperability; typically the higher-level annotations in package:js are recommended, as they help express interoperability more succinctly. For more details see JavaScript interoperability.
Don’t use dart:js directly; direct use of those legacy APIs is deprecated.
 
dart:svg
Scalable Vector Graphics.
 
dart:web_audio
High-fidelity audio programming in the browser.
 
dart:web_gl
3D programming in the browser.