Tools
When you’re ready to create an app, get the SDK and tools for your app type.
App type | Get started instructions | Tool information |
---|---|---|
Mobile | Install Flutter | Flutter tools |
Web | Install the Dart SDK | General-purpose tools and web tools |
Server or command line | Install the Dart SDK | General-purpose tools and specialized tools |
General-purpose tools
The following tools support the Dart language on all platforms.
DartPad
DartPad is a great, no-download-required way to learn Dart syntax and to experiment with Dart language features. It supports Dart’s core libraries, except for VM libraries such as dart:io.
IDEs and editors
Dart plugins exist for these commonly used IDEs.
The following Dart plugins are also available, thanks to the Dart community.
A Language Server Protocol implementation is also available for LSP-capable editors that don’t have specific Dart extensions.
Command-line tools
The Dart SDK includes the following general-purpose tools:
A static analyzer that evaluates and reports any errors or warnings in your code. The Dart plugin for your IDE should make use of Dart’s analysis engine, but you can also run the analyzer from the command line.
A documentation generator. For examples of dartdoc’s output, see the API reference documentation published at api.dart.dev and pub.dev (for example, the path
API reference).
An opinionated code formatter that follows the recommendations of the Dart style guide. IDEs that support Dart generally allow you to format the code within the IDE. Or you can run the formatter from the command line.
A package manager that makes it easy for you to install, use, and share Dart libraries, command-line tools, and other assets. Some Dart technologies, such as Flutter, may not support all of the pub commands. IDEs that support Dart generally have special support for pub, but you can also use it from the command line.
Some additional tools are available in packages. To install these tools, use the pub
command, as described in each tool’s installation instructions. Here are the general-purpose tools you might want to install:
A build package that’s used behind-the-scenes by the webdev
command.
A tool for migrating Dart source code and fixing common issues.
Debugging
A suite of debugging and performance tools.
Tools for developing web apps
The following tools support developing web apps:
The original Dart-to-JavaScript compiler, with tree shaking. IDEs and the webdev CLI use dart2js when building web apps for deployment.
The Dart dev compiler, a modular Dart-to-JavaScript compiler. IDEs and the webdev CLI use dartdevc when running a development server.
A command-line interface (CLI) for Dart web app development, including building and serving web apps.
Tools for developing command-line apps and servers
The following tools support developing or running command-line apps and servers:
The standalone Dart VM, which you can use to execute Dart code. IDEs that support Dart, and some of the pub commands, use this command behind-the-scenes to execute Dart scripts. Note that you must configure your IDE with the location of the dart
binary.
An ahead-of-time (AOT) compiler that compiles Dart code to native x64 machine code. The output is either a standalone executable (the default) or an AOT snapshot.
A Dart runtime that you can use to run AOT snapshots.