Skip to main content
Dart
Docs
Overview
Docs
Blog
Community
Learn
Try Dart
Get Dart
search
routine
light_mode
Light
dark_mode
Dark
night_sight_auto
Automatic
apps
Dart
Dart
API
DartPad
pub.dev
menu
close
asterisk
Overview
docs
Docs
newsmode
Blog
public
Community
play_lesson
Learn Dart
download
Get Dart
Language
expand_more
Introduction
Variables
Operators
Comments
Types
expand_more
Built-in types
Records
Collections
Generics
Typedefs
Type system
Patterns
expand_more
Overview & usage
Pattern types
Applied tutorial
open_in_new
Control flow
expand_more
Loops
Branches
Error handling
Functions
Metadata
Libraries & imports
Classes & objects
expand_more
Classes
Constructors
Primary constructors
Methods
Extend a class
Mixins
Enums
Dot shorthands
Extension methods
Extension types
Callable objects
Class modifiers
expand_more
Overview & usage
Class modifiers for API maintainers
Reference
Concurrency
expand_more
Overview
Asynchronous programming
Isolates
Null safety
expand_more
Sound null safety
Understanding null safety
Dart keywords
Language versioning
Core libraries
expand_more
Overview
dart:core
dart:async
dart:math
dart:convert
dart:io
dart:js_interop
Iterable collections
Asynchronous programming
expand_more
Tutorial
Futures and error handling
Using streams
Creating streams
Effective Dart
expand_more
Overview
Style
Documentation
Usage
Design
Packages
expand_more
How to use packages
Creating packages
Distributing CLI tools
Publishing packages
Writing package pages
Workspaces (monorepo support)
Hooks
Ship skills with packages
Package reference
expand_more
Dependencies
Package layout conventions
Pub environment variables
Pubspec file
Troubleshooting pub
Verified publishers
Security advisories
Versioning
Custom package repositories
What not to commit
Commonly used packages
Dart team packages
Development
expand_more
JSON serialization
Number representation
Google APIs
Multi-platform apps
Command-line & server apps
expand_more
Overview
Fetch data from the internet
Libraries & packages
Google Cloud
Web apps
expand_more
Overview
Get started
Deployment
Libraries & packages
Wasm compilation
Environment declarations
Interoperability
expand_more
Overview
C interop
Objective-C & Swift interop
Java & Kotlin interop
JavaScript interop
expand_more
Overview
Usage
JS types
Tutorials
Past JS interop
Web interop
Tools & techniques
expand_more
Overview
Editors & debuggers
expand_more
IntelliJ & Android Studio
VS Code
Troubleshoot analyzer performance
Dart DevTools
DartPad
expand_more
Overview
Troubleshooting DartPad
Command-line tools
expand_more
Dart SDK
expand_more
Overview
dart
dart analyze
dart build
dart compile
dart create
dart doc
dart fix
dart format
dart info
dart install
dart pub
dart run
dart test
dartaotruntime
Experiment flags
Other command-line tools
expand_more
build_runner
package:skills
webdev
Static analysis
expand_more
Customizing static analysis
Fixing type promotion failures
Linter rules
Analyzer plugins
Diagnostic messages
Testing & optimization
expand_more
Testing
Debugging web apps
Learn Dart
expand_more
Overview
Tutorial
Build with AI
expand_more
Overview
Package skills
Dart and Flutter MCP server
open_in_new
Genkit Dart
open_in_new
Stay up to date
expand_more
Dart Blog
Changelog
What's new in the docs
Resources
expand_more
Language cheatsheet
Language specification