The Dart SDK is a set of tools and libraries for the Dart programming language.

You can find information about Dart online at https://dart.dev/.

Here's a brief guide to what's in here:

bin/               Binaries/scripts to compile, run, and manage Dart apps.
  dart             Dart virtual machine
  dartaotruntime   Minimal Dart runtime for running AOT modules
  dart2js          Dart-to-JavaScript compiler
  dartanalyzer     Dart static analyzer
  dartdoc          Dart documentation generator

lib/               Libraries that are shipped with the Dart runtime. More
                   information is available at https://api.dart.dev.

version            The version number of the SDK (for example, 2.12.1).

revision           The git commit ID of the SDK build
                   (for example, 020b3efd3f0023c5db2097787f7cf778db837a8f).
