This overview of Dart development
points you to docs, articles, and other resources
to help you as you create, test, and deploy Dart code.
or just download Dart
and start playing with Dart Editor.
- Avast, Ye Pirates: Write a Web App
- Walks you through building a web app.
This one-hour code lab assumes you have some programming experience
but no previous experience with either Dart or web apps.
- A Tour of the Dart Language (the language tour)
- Shows each major Dart language feature, from variables to
operators to classes and libraries.
- Dart Tutorials
- Your step-by-step guide to building web apps using Dart.
You don’t need to follow all of these links right now,
but remember them for the future.
The Dart download includes several libraries.
You can also define your own libraries
and get many more using the
pub package and asset manager.
- Libraries and Visibility (part of the language tour)
- Learn how to use and create libraries.
- A Tour of the Dart Libraries (the library tour)
- Learn how to use the major features in each library that comes with Dart.
- Look in the “Libraries and APIs” section
for help using individual packages, libraries, and APIs such as
- API Reference
- Browse the full API reference docs for the Dart libraries.
Many Dart methods return Iterable, Future, or Stream objects.
An Iterable object is a collection of objects,
such as a list or set.
Closely tied to the Dart language,
the Iterable class provides the interface used by for-in loops.
A Future object represents a value to be delivered in the future.
For example, the dart:io File class’s readAsString() method
returns a Future<String>,
which you can use to get the file’s entire contents as a string.
A Stream object represents a sequence of data
to be delivered in the future.
One example of a stream is the onClick stream of events
for a dart:html button.
Another example is the file content stream returned by
the dart:io File class’s openRead() method.
Creating command-line apps
You can use Dart for anything from scripts to web servers.
Thanks to Heroku’s support for third-party runtimes,
you can run your server-side Dart app on Heroku’s cloud.
- Command-Line Apps: A Programmer’s Guide
- Provides a set of samples, tutorials, and articles that
explain the APIs, tools, and techniques for writing and
deploying command-line apps such as servers and scripts.
Creating web apps
If you’re new to web apps,
start with the Dart Tutorials—a
set of tutorials that teach you how to use Dart to write web apps,
assuming no previous experience with either Dart or web apps.
While you’re developing your web app,
you can run it in Dartium.
and run it in other browsers.
When creating web apps, you can use
dart:html and the polymer.dart package
Although you don’t need to use polymer.dart or AngularDart,
they’re a great way to simplify your code.
A basic, yet Darty, interface to the browser.
A package that lets you use tomorrow’s web APIs today.
A port of the Angular framework to Dart.
You aren’t limited to Dart libraries.
With the dart:js library,
Thanks to Dart’s tool friendliness,
you have many choices for editors, IDEs, and other tools.
When you download Dart,
you get not only Dart Editor, but also
Dartium (a browser with built-in Dart support)
and the Dart SDK.
The SDK includes command-line tools such as
and a package manager (pub).
- Dart Editor
- The easiest way to start writing Dart programs.
- Tools for Dart
- Information about tools,
plus links to downloads.
A static analyzer and unit testing library
provide support for testing your web or command-line app.
If your code is open source,
try drone.io for continuous testing.
When you have a question or find a problem,
try these resources.
Ask specific programming questions here:
Whenever possible, follow the practices
recommended in these documents:
Issues and feature requests
If you think you’ve found a bug,
check the list of Dart issues to see whether
the problem has already been reported
and has a workaround.
To request a feature, you can create an issue
or start a discussion on the appropriate