Chapter 1: Starting the Text Editor
Building your first application
Debugging a Dart application
Chapter 2: Advancing the Editor
The next steps for the text editor
Building the dialog package
The command-line app for source code statistics
Building web interfaces with Dart
Chapter 3: Slideshow Presentations
Building a presentation application
Chapter 4: Language, Motion, and Sound
Exploring the intl package
Playing sound in the browser
Chapter 5: A Blog Server
The Hello World server example
Introducing Dart's server frameworks
Chapter 6: Blog Server Advanced
Introducing the await and async keywords
Chapter 7: Live Data Collection
Kicking off the earthquake monitoring system
Introducing the data source
Exploring the GeoJSON format
Introducing the pgAdmin GUI
Observing the Dart VM internals
Chapter 8: Live Data and a Web Service
Recapping the system so far
Chapter 9: A Real-Time Visualization
Notifying the user of an update
Plotting the user's location
Documenting Dart code with dartdoc
Chapter 10: Reports and an API
Recapping the earthquake system
Passing parameters to the API
Chapter 11: Beyond Dart's Basics
Modularity and a namespace
Functions and closures in different scopes
Chapter 12: Advanced Techniques and Reflection
Chapter 13: Object Creation
Chapter 14: Asynchronous Programming
Call-stack architectures versus event-driven architectures
Chapter 15: The Stream Framework
Why you should use streams
Single-subscription streams versus broadcast streams
An overview of the stream framework API
Chapter 16: The Collection Framework
A Dart collection framework
The collection class hierarchy
Choosing the right collection
Chapter 17: Dart and JavaScript Interoperation
Interoperation at a glance
JsObject and instantiation
JsFunction and the this keyword
Chapter 18: Internalization and Localization
Internationalizing your web application
Using Google Translator Toolkit
Using translated messages
Chapter 19: Client-to-server Communication
Communication at a glance
Hypertext Transfer Protocol
AJAX long polling request
Chapter 20: Advanced Storage
Chapter 21: Supporting Other HTML5 Features
The native drag-and-drop APIs
Chapter 22: Security Aspects
Chapter 23: Working with Dart Tools
Configuring the Dart environment
Setting up the checked and production modes
Rapid Dart Editor troubleshooting
Hosting your own private pub mirror
Using Sublime Text 2 as an IDE
Compiling your app to JavaScript
Debugging your app in JavaScript for Chrome
Using the command-line tools
Solving problems when pub get fails
Shrinking the size of your app
Getting information from the operating system
Chapter 24: Structuring, Testing, and Deploying an Application
Parsing command-line arguments
Structuring an application
Using a library from within your app
Microtesting your code with assert
Unit testing a Polymer web app
Adding logging to your app
Profiling and benchmarking your app
Publishing and deploying your app
Using different settings in the checked and production modes
Chapter 25: Working with Data Types
Using regular expressions
Generating a random number within a range
Getting a random element from a list
Working with dates and times
Improving performance in numerical computations
Using SIMD for enhanced performance
Chapter 26: Object Orientation
Testing and converting types
Using a factory constructor
Making toJSON and fromJSON methods in your class
Creating common classes for client and server apps
Chapter 27: Handling Web Applications
Using a browser's local storage
Using application cache to work offline
Preventing an onSubmit event from reloading the page
Dynamically inserting rows in an HTML table
Structuring a game project
Authorizing OAuth2 to Google services
Using JavaScript libraries
Chapter 28: Working with Files and Streams
Reading and processing a file line by line
Chapter 29: Working with Web Servers
Posting JSON-formatted data
Receiving data on the web server
Serving files with http_server
Using secure sockets and servers
Chapter 30: Working with Futures, Tasks, and Isolates
Error handling with Futures
Scheduling tasks using Futures
Running a recurring function
Using isolates in the Dart VM
Using isolates in web apps
Using multiple cores with isolates
Using the Worker Task framework
Chapter 31: Working with Databases
Storing data locally with IndexedDB
Using Lawndart to write offline web apps
Storing data in PostgreSQL
Storing data in RethinkDB
Chapter 32: Polymer Dart Recipes
Data binding with polymer.dart
Binding and repeating over a list
Using custom attributes and template conditionals
Binding to an input text field or a text area
Binding to a selected field
Polymer elements with JavaScript interop
Working with custom elements
Internationalizing a Polymer app
Chapter 33: Working with Angular Dart
Setting up an Angular app
Using formatters as filters