Flutter Examples
================

This directory contains several examples of using Flutter. Each of these is an
individual Dart application package.

To run an example, use `flutter run` inside that example's directory.  See the
[getting started guide](https://flutter.io/getting-started/) to install
the `flutter` tool.

**Tip:** To see examples of how to use a specific Flutter framework class,
copy and paste a URL with this format in your browser. Replace `foo` with the
classname you are searching for (for example, here's the [query](https://github.com/flutter/flutter/search?q=path%3Aexamples+new+AppBar) for examples of
the [`AppBar`](https://docs.flutter.io/flutter/material/AppBar-class.html) class).

```
https://github.com/flutter/flutter/search?q=path%3Aexamples+new+foo
```

Available examples include:

- **Hello, world** The [hello world app](hello_world) is a basic app that shows
  the text "hello, world."

- **Flutter gallery** The [flutter gallery app](flutter_gallery) showcases
  Flutter's implementation of [material design](https://material.google.com/).

- **Layers** The [layers vignettes](layers) show how to use the various layers
  in the Flutter framework. There is no main.dart in this directory because each
  file is a standalone example. To run a particular file, use
  `flutter run -t filename.dart`.
