Peer-based decentralized federated learning (DFL) over a stateless mixnet, with full control via FastAPI and a React frontend.
- Peer-based DFL simulation using Docker
- Stateless mixnet communication based on
- Federated learning over encrypted transport
- FastAPI backend for node management
- React frontend for UI control
- Inline acknowledgments and message tracking
- FastAPI — Python async web framework for backend management
- React.js — Frontend JavaScript library for building user interfaces
- Docker — Containerization for node simulation
- SphinxMix — Mixnet packet format used for anonymous routing
- Scikit-learn — For machine learning models
- Uvicorn — ASGI server used to run FastAPI apps
git clone
cd DFL_PeerBasedMixingdocker build -t dfl_node ./nodeor for debugging purposes
docker build -t dfl_node ./node --progress=plain --no-cachepip install -r requirements.txtuvicorn manager.app:app --host 0.0.0.0 --port 8000Backend runs at http://localhost:8000.
sudo apt install npm
npm install --prefix frontendnpm start --prefix frontendFrontend runs at http://localhost:3000.
DFL_PeerBasedMixing/
├── node/ # Dockerized node logic
├── manager/ # FastAPI backend for node control
├── experiments/ # Jupyter Notebooks and figures
├── metrics/ # Automatically recorded time-series
└── frontend/ # React frontend interface