|  | # Examples of Flutter's layered architecture | 
|  |  | 
|  | This directory contains a number of self-contained examples that illustrate | 
|  | Flutter's layered architecture. | 
|  |  | 
|  | * [*raw/*](raw/) These examples show how to program against the lowest layer of | 
|  | the system. They manually receive input packets and construct composited | 
|  | scenes. | 
|  |  | 
|  | * [*rendering/*](rendering/) These examples use Flutter's render tree to | 
|  | structure your app using a retained tree of visual objects. These objects | 
|  | coordinate to determine their size and position on screen and to handle | 
|  | events. | 
|  |  | 
|  | * [*widgets/*](widgets/) These examples use Flutter's widgets to build more | 
|  | elaborate apps using a reactive framework. | 
|  |  | 
|  | * [*services/*](services/) These examples use services available in Flutter to | 
|  | interact with the host platform. | 
|  |  | 
|  | To run each example, specify the demo file on the `flutter run` | 
|  | command line, for example: | 
|  |  | 
|  | ``` | 
|  | flutter run raw/spinning_square.dart | 
|  | flutter run rendering/spinning_square.dart | 
|  | flutter run widgets/spinning_square.dart | 
|  | ``` |