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://www.google.com/design/spec/material-design/introduction.html).

- **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`.
