Example projects
================

Flower comes with a number of usage examples. The examples demonstrate how Flower can be
used to federate different kinds of existing machine learning pipelines, usually
leveraging popular machine learning frameworks such as `PyTorch <https://pytorch.org/>`_
or `TensorFlow <https://www.tensorflow.org/>`_.

The following examples are available as standalone projects.

Quickstart TensorFlow/Keras
---------------------------

The TensorFlow/Keras quickstart example shows CIFAR-10 image classification with
MobileNetV2:

- `Quickstart TensorFlow (Code)
  <https://github.com/adap/flower/tree/main/examples/quickstart-tensorflow>`_
- :doc:`Quickstart TensorFlow (Tutorial) <tutorial-quickstart-tensorflow>`
- `Quickstart TensorFlow (Blog Post)
  <https://flower.ai/blog/2020-12-11-federated-learning-in-less-than-20-lines-of-code>`_

Quickstart PyTorch
------------------

The PyTorch quickstart example shows CIFAR-10 image classification with a simple
Convolutional Neural Network:

- `Quickstart PyTorch (Code)
  <https://github.com/adap/flower/tree/main/examples/quickstart-pytorch>`_
- :doc:`Quickstart PyTorch (Tutorial) <tutorial-quickstart-pytorch>`

PyTorch: From Centralized To Federated
--------------------------------------

This example shows how a regular PyTorch project can be federated using Flower:

- `PyTorch: From Centralized To Federated (Code)
  <https://github.com/adap/flower/tree/main/examples/pytorch-from-centralized-to-federated>`_
- :doc:`PyTorch: From Centralized To Federated (Tutorial)
  <example-pytorch-from-centralized-to-federated>`

Federated Learning on Raspberry Pi and Nvidia Jetson
----------------------------------------------------

This example shows how Flower can be used to build a federated learning system that run
across Raspberry Pi and Nvidia Jetson:

- `Federated Learning on Raspberry Pi and Nvidia Jetson (Code)
  <https://github.com/adap/flower/tree/main/examples/embedded-devices>`_
- `Federated Learning on Raspberry Pi and Nvidia Jetson (Blog Post)
  <https://flower.ai/blog/2020-12-16-running_federated_learning_applications_on_embedded_devices_with_flower>`_
