Capabilities
Which high-level features a Program can use when it renders to Dart and runs on Flutter — across iOS, Android, desktop and web from one build.
Contents
How a Program becomes Dart, in parts. Start with the introduction, then follow each part into the rendered output and the runtime it links against.
- Introduction — what the Dart target is, and how to read the rest of this section.
- Capabilities — which high-level features are possible, built in or through a library.
- Example — a full program using every keyword, and the Dart it renders to.
- Naming considerations — how Program's dotted names are carried into Dart.
- Entry point — starting a program and mounting it as a Flutter app.
- Drivers — the native drivers that provide the interface, animation and network.
- Runtime — the Reactive and Context machinery the rendered code links against.
- Native modules — the hand-written Dart behind
NATIVEfunctions. - Keywords — how each of Program's keywords renders to Dart.
- Project setup — the files and commands to build and run the rendered program.
- Reserved words — the words Dart keeps for itself, and how a colliding name is escaped.
What Flutter can do
Dart on Flutter is a full application platform: one program builds a native app for phones, desktops and the web. The reactive core is host-agnostic; the drivers decide what a program can reach, and most of it is built in.
| Feature | Status | How |
|---|---|---|
| User interface | Built in | The interface driver renders Ui as Flutter widgets; a custom component returns any Widget. |
| Networking | Built in | Network uses dart:io / package:http and WebSocket. |
| Asynchrony | Built in | A LOCKED state models an in-flight value; the driver completes it from a Future and re-enters the cycle. |
| Animation | Built in | The Animate driver shares one Flutter Ticker. |
| Storage & files | Built in | Storage maps to dart:io files on mobile/desktop and to platform stores; path_provider supplies locations. |
| Graphics | Built in | Flutter's Canvas / CustomPainter through a custom interface component or the Graphics driver. |
| Location & maps | Via a package | Location uses the platform GPS; a map is a custom component backed by google_maps_flutter. |
| Background work | Isolates | Heavy work runs on a Dart isolate behind a native module; reactive state does not cross the isolate boundary. |
Where a capability needs host code it arrives as a NATIVE Dart function or a driver — see native modules and drivers.