SyftBox Guides
These guides cover using syft-flwr with SyftBox as the communication backend.
What is SyftBox?
SyftBox is a file synchronization network maintained by OpenMined. It enables privacy-preserving federated learning by syncing files between local datasites and a central server—without requiring direct network connections between participants.
Key characteristics:
- Centralized sync server - Files are synced through OpenMined's infrastructure
- Local SyftBox client required - Install via
curl -fsSL https://syftbox.net/install.sh | sh - RDS Dashboard - Web UI for managing datasites and jobs
- Offline-capable - Sync happens asynchronously
Prerequisites
Before using these guides, ensure you have:
- SyftBox client installed and running
- Python 3.11+
syft-rds and syft-flwr packages installed
Guide Structure
For Data Owners
- Setting Up Your Datasite
- Managing Your Datasets
- Reviewing FL Job Proposals
- Running FL Clients
- Privacy & Security
For Data Scientists
- Exploring Datasites
- Creating FL Projects
- Bootstrapping with syft-flwr
- Submitting FL Jobs
- Running FL Servers
- Custom Strategies
- Monitoring FL Training
- Testing & Deployment
Alternative: Google Drive Backend
If you prefer a simpler setup without installing SyftBox, see the Google Colab Quickstart tutorial which uses Google Drive for file-based communication.