← all repositories
flwrlabs/flower

Federated learning that speaks every ML dialect

Abstracts the messy coordination of distributed training so you can focus on algorithms instead of network plumbing, without forcing you to switch ML stacks.

7k stars Python ML Frameworks
flower
Not currently ranked — collecting fresh signals.
star history

What it does

Flower (flwr) orchestrates federated AI systems, letting you train models across phones, edge devices, and distributed servers without pooling data in one place. It handles the communication and aggregation logic so you can focus on the learning algorithm rather than the network plumbing. The framework targets both research and edge deployments, with examples for Android, iOS, Raspberry Pi, and Nvidia Jetson.

The interesting bit

Most ML infrastructure forces you to pick a stack; Flower treats framework loyalty as a design flaw. It supports PyTorch, TensorFlow, JAX, Hugging Face, XGBoost, scikit-learn, Pandas, and even raw NumPy, while also hosting community-contributed baselines that reproduce major federated learning papers.

Key highlights

  • Framework-agnostic by design: works with PyTorch, TensorFlow, JAX, Hugging Face, MLX, XGBoost, CatBoost, scikit-learn, Pandas, and NumPy
  • Originated as a University of Oxford research project with an emphasis on extensibility and customization
  • Supports mobile and embedded deployment via Android (TFLite), iOS (CoreML), Raspberry Pi, and Nvidia Jetson
  • Includes community-contributed baselines reproducing experiments from popular FL publications (FedProx, MOON, FedAvg, and others)
  • Written for readability and maintainability, encouraging contributors to read and modify the source

Verdict

Researchers and engineers building custom federated systems across heterogeneous devices and ML stacks will find it useful; those wanting a fully managed, opinionated SaaS should look elsewhere.

Frequently asked

What is flwrlabs/flower?
Abstracts the messy coordination of distributed training so you can focus on algorithms instead of network plumbing, without forcing you to switch ML stacks.
Is flower open source?
Yes — flwrlabs/flower is open source, released under the Apache-2.0 license.
What language is flower written in?
flwrlabs/flower is primarily written in Python.
How popular is flower?
flwrlabs/flower has 7k stars on GitHub.
Where can I find flower?
flwrlabs/flower is on GitHub at https://github.com/flwrlabs/flower.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.