Для упрощения разработки на языке Dart поставляется SDK, включающий в себя компилятор в javascript - dart2js, виртуальную машину Dart VM, пакетный менеджер pub, статический анализатор кода dart_analyzer, набор библиотек, интегрированная среда разработки DartPad и плагины с поддержкой Dart для IntelliJ IDEA, WebStorm, Emacs, Sublime Text 2 и Vim. Для выполнения и отладки приложений на языке Dart, без компиляции в javascript, предоставляется Dartium - специальная сборка браузера Chromium с интегрированной виртуальной машиной Dart VM. Дополнительные пакеты с библиотеками и утилитами распространяются через репозиторий pub, который насчитывает 2266 пакетов, в том числе фреймворки для разработки web-приложений AngularDart и polymer.dart.
В Dart 1.20 активирована по умолчанию представленная в прошлом выпуске реализация файла ".package", пришедшего на замену директории "/packages/", в которой нередко можно было наблюдать сотни символических ссылок. Для возвращения старого поведения при выполнении команды "pub get" следует указать опцию "--packages-dir". В виртуальную машину Dart VM в новом выпуске добавлена возможность проброса перехватываемых объектов Error в случае сбоя компиляции метода, что позволяет, например, реализовать в package:test вывод наглядных трассировок стека при выполнении кода с синтаксическими ошибками. Кроме того, в Linux для распределения памяти в VM теперь задействована библиотека tcmalloc, предоставляющая больше средств для отладки и профилирования, а также быстрее выделяющая мелкие блоки памяти (большие блоки выделяются немного медленнее).
