WebStorm 10.0.0 Help

Dart Support

WebStorm supports developing, running, and debugging Dart code.
WebStorm recognizes *.dart files, and allows you to edit them
providing full range of coding assistance.
Dart files are marked with the icon.

Dart is intended for developing Web and command-line applications. WebStorm supports both workflows.

For running and debugging Dart command-line applications,
WebStorm provides a dedicated run/debug configuration of the type Dart Command Line Application.

To run and debug a Dart Web application in a browser, you either need to use the Dartium browser
or have the Dart code translated into JavaScript.

Most browsers that work with JavaScript code do not natively process Dart code. The only exception is Dartium.
This dart-oriented version of Chromium contains a built-in Dart VM and therefore can run Dart code directly.
To be executed in any other browser, Dart code has to be compiled into JavaScript.

With the pub tool,
the compilation is performed through the pub serve action
using the built-in dart2js compiler.

In WebStorm, transpiler configurations are called File Watchers.
For each supported transpiler, WebStorm provides a predefined File Watcher template.
Predefined File Watcher templates are available at the WebStorm level. To run a transpiler against your project files, you need to
create a project-specific File Watcher based on the relevant template, at least, specify the path to the transpiler to use on your machine.

You can run Dart Web application in any browser, while debugging is supported only in Dartium and Chrome.
To run a Dart Web application you just need to open the starling HTML page in the browser of your choice.
Debugging a Dart Web application is initiated through a rung configuration of the type JavaScript Debug.

Integration with the native Dart static analysis engine:
all inconsistencies and potential problems are reported in the dedicated Dart Analysis Tool Window
with the possibility to navigate to the fragment of the source code where the problem was detected.

Dart-specific refactoring procedures, such as change signature, extract parameter, extract variable.
These types of refactoring are identical with JavaScript,
for more details, see the section JavaScript-Specific Refactorings