summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-05-05 07:04:37 +0000
committerCoprDistGit <infra@openeuler.org>2023-05-05 07:04:37 +0000
commitd0927acba65d54d5cb29418ee53fa89044c4f099 (patch)
tree20488ed7f5983063c581f4e79f29f96b0d5c90ac
parent27b09c89488c2473a6ec2d71ef1cf089ad8b9a82 (diff)
automatic import of python-syftopeneuler20.03
-rw-r--r--.gitignore1
-rw-r--r--python-syft.spec1186
-rw-r--r--sources1
3 files changed, 1188 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..23afb83 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/syft-0.8.0.post2.tar.gz
diff --git a/python-syft.spec b/python-syft.spec
new file mode 100644
index 0000000..eacf5be
--- /dev/null
+++ b/python-syft.spec
@@ -0,0 +1,1186 @@
+%global _empty_manifest_terminate_build 0
+Name: python-syft
+Version: 0.8.0.post2
+Release: 1
+Summary: Perform numpy-like analysis on data that remains in someone elses server
+License: Apache-2.0
+URL: https://openmined.github.io/PySyft/
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/bd/05/e9cf0be923f524ef94c35efdcc959fafb0892f0841d8e3fa868d349fe42c/syft-0.8.0.post2.tar.gz
+BuildArch: noarch
+
+Requires: python3-astunparse
+Requires: python3-bcrypt
+Requires: python3-flax
+Requires: python3-forbiddenfruit
+Requires: python3-gevent
+Requires: python3-gipc
+Requires: python3-jax
+Requires: python3-jaxlib
+Requires: python3-loguru
+Requires: python3-numpy
+Requires: python3-opendp
+Requires: python3-packaging
+Requires: python3-pandas
+Requires: python3-pyarrow
+Requires: python3-pycapnp
+Requires: python3-pydantic[email]
+Requires: python3-pymongo
+Requires: python3-pynacl
+Requires: python3-redis
+Requires: python3-requests
+Requires: python3-RestrictedPython
+Requires: python3-result
+Requires: python3-tqdm
+Requires: python3-typeguard
+Requires: python3-typing-extensions
+Requires: python3-sherlock[filelock,redis]
+Requires: python3-uvicorn[standard]
+Requires: python3-fastapi
+Requires: python3-hagrid
+Requires: python3-opentelemetry-api
+Requires: python3-opentelemetry-sdk
+Requires: python3-opentelemetry-exporter-jaeger
+Requires: python3-opentelemetry-instrumentation
+Requires: python3-opentelemetry-instrumentation-requests
+Requires: python3-pytest
+Requires: python3-pytest-cov
+Requires: python3-pytest-xdist[psutil]
+Requires: python3-pytest-parallel
+Requires: python3-pytest-asyncio
+Requires: python3-pytest-randomly
+Requires: python3-pytest-sugar
+Requires: python3-pytest-mock-resources
+Requires: python3-on-whales
+Requires: python3-pytest-lazy-fixture
+Requires: python3-pytest-rerunfailures
+Requires: python3-coverage
+Requires: python3-joblib
+Requires: python3-faker
+Requires: python3-bandit
+Requires: python3-ruff
+Requires: python3-importlib-metadata
+Requires: python3-isort
+Requires: python3-mypy
+Requires: python3-pre-commit
+Requires: python3-safety
+Requires: python3-pyoblv
+Requires: python3-pytest
+Requires: python3-pytest-cov
+Requires: python3-pytest-xdist[psutil]
+Requires: python3-pytest-parallel
+Requires: python3-pytest-asyncio
+Requires: python3-pytest-randomly
+Requires: python3-pytest-sugar
+Requires: python3-pytest-mock-resources
+Requires: python3-on-whales
+Requires: python3-pytest-lazy-fixture
+Requires: python3-pytest-rerunfailures
+Requires: python3-coverage
+Requires: python3-joblib
+Requires: python3-faker
+
+%description
+<div align="left"> <a href="https://pypi.org/project/syft/"><img src="https://pepy.tech/badge/syft" /></a> <a href="https://pypi.org/project/syft/"><img src="https://badge.fury.io/py/syft.svg" /></a> <a href="https://hub.docker.com/u/openmined"><img src="https://img.shields.io/badge/docker-images-blue?logo=docker" /></a> <a href="https://github.com/OpenMined/PySyft/actions/workflows/nightlies.yml"><img src="https://github.com/OpenMined/PySyft/actions/workflows/nightlies.yml/badge.svg?branch=dev" /></a> <a href="https://slack.openmined.org/"><img src="https://img.shields.io/badge/chat-on%20slack-purple?logo=slack" /></a> <a href="https://openmined.github.io/PySyft/"><img src="https://img.shields.io/badge/read-docs-yellow?logo=mdbook" /></a>
+<br /><br /></div>
+
+<img alt="Syft Logo" src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/title_syft_light.png" width="200px" />
+
+Perform `numpy`-like analysis on `data` that remains in `someone else's` server
+
+<div align="left">
+<img alt="Syft Logo" src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/header.png" alt="Syft Overview" width="100%" />
+</div>
+
+# Quickstart
+
+✅ `Linux` ✅ `macOS`\* ✅ `Windows`†‡
+
+## Install syft on Python 3.9 - 3.10
+
+```bash
+$ pip install -U syft -f https://whls.blob.core.windows.net/unstable/index.html
+```
+
+## Launch a python dev Domain
+
+```python
+# from Jupyter / Python
+import syft as sy
+sy.requires(">=0.8,<0.8.1")
+node = sy.orchestra.launch(name="my-domain", port=8080, dev_mode=True, reset=True)
+```
+
+```bash
+# or from the command line
+$ syft launch --name=my-domain --port=8080 --reset=True
+
+Starting syft-node server on 0.0.0.0:8080
+```
+
+## Connect with our Python Client
+
+```python
+import syft as sy
+sy.requires(">=0.8,<0.8.1")
+domain_client = sy.login(port=8080, email="info@openmined.org", password="changethis")
+```
+
+## Deploy to a Container Engine or Cloud
+
+1. Install our handy 🛵 cli tool which makes deploying a Domain or Gateway server a one-liner:
+ `pip install -U hagrid`
+
+2. Then run our interactive jupyter Install 🧙🏽‍♂️ Wizard<sup>BETA</sup>:
+ `hagrid quickstart`
+
+3. In the tutorial you will learn how to install and deploy:
+ `PySyft` = our `numpy`-like 🐍 Python library for computing on `private data` in someone else's `Domain`
+
+ `PyGrid` = our 🐳 `docker` / 🐧 `vm` `Domain` & `Gateway` Servers where `private data` lives
+
+4. During quickstart we will deploy `PyGrid` to localhost with 🐳 `docker`, however 🛵 HAGrid can deploy to `podman` or a 🐧 `ubuntu` VM on `azure` / `gcp` / `ANY_IP_ADDRESS` by using 🔨 `ansible`†
+
+## Docs and Support
+
+- 📝 <a href="https://github.com/OpenMined/PySyft/blob/0.8/notebooks/api">API Example Notebooks</a>
+- 📚 <a href="https://openmined.github.io/PySyft/">Docs</a>
+- `#support` on <a href="https://slack.openmined.org/">Slack</a>
+
+# Install Notes
+
+- HAGrid 0.3 Requires: 🐍 `python` 🐙 `git` - Run: `pip install -U hagrid`
+- Interactive Install 🧙🏽‍♂️ Wizard<sup>BETA</sup> Requires 🛵 `hagrid`: - Run: `hagrid quickstart`
+ †`Windows` does not support `ansible`, preventing some remote deployment targets
+- PySyft 0.8 Requires: 🐍 `python 3.10` - Run: `pip install -U syft`
+ \*`macOS` Apple Silicon users might need cmake: `brew install cmake`
+ ‡`Windows` users must run this first: `pip install jaxlib==0.3.14 -f https://whls.blob.core.windows.net/unstable/index.html`
+- PyGrid Requires: 🐳 `docker` or 🐧 `ubuntu` VM - Run: `hagrid launch ...`
+
+# Versions
+
+`0.9.0` (Beta) - `dev` branch 👈🏽 <a href="https://github.com/OpenMined/PySyft/blob/dev/notebooks/api/0.9">API</a>
+`0.8.0` (Stable) - <a href="https://github.com/OpenMined/PySyft/blob/0.8/notebooks/api/0.8">API</a>
+
+Deprecated:
+
+- `0.7.0` - <a href="https://github.com/OpenMined/courses/tree/introduction-to-remote-data-science-dev">Course 3 Updated</a>
+- `0.6.0` - <a href="https://github.com/OpenMined/courses/tree/introduction-to-remote-data-science">Course 3</a>
+- `0.5.1` - <a href="https://github.com/OpenMined/courses/tree/foundations-of-private-computation">Course 2</a> + M1 Hotfix
+- `0.2.0` - `0.5.0`
+
+PySyft and PyGrid use the same `version` and its best to match them up where possible. We release weekly betas which can be used in each context:
+
+PySyft (Stable): `pip install -U syft`
+PyGrid (Stable) `hagrid launch ... tag=latest`
+
+PySyft (Beta): `pip install -U syft --pre`
+PyGrid (Beta): `hagrid launch ... tag=beta`
+
+HAGrid is a cli / deployment tool so the latest version of `hagrid` is usually the best.
+
+# What is Syft?
+
+<img align="right" src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/logo_big.png" alt="Syft" height="250" style="padding-left:30px;">
+
+`Syft` is OpenMined's `open source` stack that provides `secure` and `private` Data Science in Python. Syft decouples `private data` from model training, using techniques like [Federated Learning](https://ai.googleblog.com/2017/04/federated-learning-collaborative.html), [Differential Privacy](https://en.wikipedia.org/wiki/Differential_privacy), and [Encrypted Computation](https://en.wikipedia.org/wiki/Homomorphic_encryption). This is done with a `numpy`-like interface and integration with `Deep Learning` frameworks, so that you as a `Data Scientist` can maintain your current workflow while using these new `privacy-enhancing techniques`.
+
+### Why should I use Syft?
+
+`Syft` allows a `Data Scientist` to ask `questions` about a `dataset` and, within `privacy limits` set by the `data owner`, get `answers` to those `questions`, all without obtaining a `copy` of the data itself. We call this process `Remote Data Science`. It means in a wide variety of `domains` across society, the current `risks` of sharing information (`copying` data) with someone such as, privacy invasion, IP theft and blackmail will no longer prevent the vast `benefits` such as innovation, insights and scientific discovery which secure access will provide.
+
+No more cold calls to get `access` to a dataset. No more weeks of `wait times` to get a `result` on your `query`. It also means `1000x more data` in every domain. PySyft opens the doors to a streamlined Data Scientist `workflow`, all with the individual's `privacy` at its heart.
+
+# Tutorials
+
+<table border="5" bordercolor="grey">
+<tr>
+<th align="center">
+<img width="441" height="1">
+<div align="center">
+<img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/personas_image/dataowner.png" alt="" width="100" height="100" align="center">
+<p>Data Owner</p></div>
+</th>
+<th align="center">
+<img width="441" height="1">
+<div align="center"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/personas_image/datascientist.png" alt="" width="100" height="100" align="center">
+<p>Data Scientist</p></div>
+
+</th>
+<th align="center">
+<img width="441" height="1">
+<div align="center">
+<img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/personas_image/dataengineer.png" alt="" width="100" height="100" align="center">
+<p>Data Engineer</p>
+</div>
+</th>
+</tr>
+<tr>
+<td valign="top">
+
+- <a href="https://github.com/OpenMined/PySyft/blob/0.8/notebooks/quickstart/data-owner/00-deploy-domain.ipynb">Deploy a Domain Server</a>
+- <a href="https://github.com/OpenMined/PySyft/blob/0.8/notebooks/quickstart/data-owner/01-upload-data.ipynb">Upload Private Data</a>
+- <a href="https://github.com/OpenMined/PySyft/blob/0.8/notebooks/quickstart/data-owner/02-create-account-configure-pb.ipynb">Create Accounts</a>
+- Manage Privacy Budget</a>
+- <a href="https://github.com/OpenMined/PySyft/blob/0.8/notebooks/quickstart/data-owner/03-join-network.ipynb">Join a Network</a>
+- Learn how PETs streamline Data Policies
+
+</td>
+<td valign="top">
+
+- Install Syft</a>
+- Connect to a Domain</a>
+- Search for Datasets</a>
+- Train Models
+- Retrieve Secure Results
+- Learn Differential Privacy
+
+</td>
+<td valign="top">
+
+- Setup Dev Mode</a>
+- Deploy to Azure
+- Deploy to GCP
+- Deploy to Kubernetes
+- Customize Networking
+- Modify PyGrid UI
+</td>
+</tr>
+</table>
+
+# Terminology
+
+<table border="5" bordercolor="grey">
+<tr>
+<th align="center">
+<img width="441" height="1">
+<p>👨🏻‍💼 Data Owners</p>
+</th>
+<th align="center">
+<img width="441" height="1">
+<p>👩🏽‍🔬 Data Scientists</p>
+</th>
+</tr>
+<tr>
+<td valign="top">
+<!-- REMOVE THE BACKSLASHES -->
+
+Provide `datasets` which they would like to make available for `study` by an `outside party` they may or may not `fully trust` has good intentions.
+
+</td>
+<td valign="top">
+<!-- REMOVE THE BACKSLASHES -->
+
+Are end `users` who desire to perform `computations` or `answer` a specific `question` using one or more data owners' `datasets`.
+
+</td>
+</tr>
+<tr>
+<th align="center">
+<img width="441" height="1">
+<p>🏰 Domain Server</p>
+</th>
+<th align="center">
+<img width="441" height="1">
+<p>🔗 Gateway Server</p>
+</th>
+</tr>
+<tr>
+<td valign="top">
+<!-- REMOVE THE BACKSLASHES -->
+
+Manages the `remote study` of the data by a `Data Scientist` and allows the `Data Owner` to manage the `data` and control the `privacy guarantees` of the subjects under study. It also acts as a `gatekeeper` for the `Data Scientist's` access to the data to compute and experiment with the results.
+
+</td>
+<td valign="top">
+<!-- REMOVE THE BACKSLASHES -->
+
+Provides services to a group of `Data Owners` and `Data Scientists`, such as dataset `search` and bulk `project approval` (legal / technical) to participate in a project. A gateway server acts as a bridge between it's members (`Domains`) and their subscribers (`Data Scientists`) and can provide access to a collection of `domains` at once.</td>
+
+</tr>
+<tr>
+</table>
+
+# Community
+
+<table border="5" bordercolor="grey">
+<tr>
+<th align="center" valign="top">
+<img width="441" height="1">
+<div align="center">
+
+<img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/panel_slack_title_light.png" alt="" width="100%" align="center" />
+
+<a href="https://slack.openmined.org/"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/panel_slack.png" alt="" width="100%" align="center" /></a>
+
+</div>
+</th>
+<th align="center" valign="top">
+<img width="441" height="1">
+<div align="center">
+
+<img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/panel_title_videos_papers_light.png" alt="" width="100%" align="center" />
+
+<p align="left"><sub><sup>
+🎥 <a href="https://www.youtube.com/watch?v=qVf0tPBzr2k">PETs: Remote Data Science Unleashed - R gov 2021</a><br />
+🎥 <a href="https://youtu.be/sCoDWKTbh3s?list=PL_lsbAsL_o2BQKXG7mkGFA8LSApCnhljL">Introduction to Remote Data Science - PyTorch 2021</a><br />
+🎥 <a href="https://youtu.be/kzLeTz_vIeQ?list=PL_lsbAsL_o2BtOz6KUfUI_Zla6Rg5dmyc">The Future of AI Tools - PyTorch 2020</a><br />
+🎥 <a href="https://www.youtube.com/watch?v=4zrU54VIK6k&t=1s">Privacy Preserving AI - MIT Deep Learning Series</a><br />
+🎥 <a href="https://www.youtube.com/watch?v=Pr4erdusiW0">Privacy-Preserving Data Science - TWiML Talk #241</a><br />
+🎥 <a href="https://www.youtube.com/watch?v=NJBBE_SN90A">Privacy Preserving AI - PyTorch Devcon 2019</a><br />
+📖 <a href="https://arxiv.org/pdf/2110.01315.pdf">Towards general-purpose infrastructure for protect...</a><br />
+📖 <a href="https://arxiv.org/pdf/2104.12385.pdf">Syft 0.5: A platform for universally deployable ...</a><br />
+📖 <a href="https://arxiv.org/pdf/1811.04017.pdf">A generic framework for privacy preserving deep ...</a>
+</sup></sup></p>
+</div>
+</th>
+<th align="center" valign="top">
+<img width="441" height="1">
+<div align="center">
+
+<img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/panel_padawan_title_light.png" alt="" width="100%" align="center" />
+
+<a href="https://blog.openmined.org/work-on-ais-most-exciting-frontier-no-phd-required/"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/panel_padawan.png" alt="" width="100%" align="center"></a>
+
+</div>
+</th>
+</tr>
+</table>
+
+# Courses
+
+<table border="5" bordercolor="grey">
+<tr>
+<th align="center">
+<img width="441" height="1">
+<div align="center">
+<a href="https://courses.openmined.org/courses/our-privacy-opportunity"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/course_privacy.png" alt="" width="100%" align="center" /></a>
+</th>
+<th align="center">
+<img width="441" height="1">
+<div align="center">
+<a href="https://courses.openmined.org/courses/foundations-of-private-computation"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/course_foundations.png" alt="" width="100%" align="center" /></a>
+</div>
+</th>
+<th align="center">
+<img width="441" height="1">
+<div align="center">
+<a href="https://courses.openmined.org/courses/introduction-to-remote-data-science"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/course_introduction.png" alt="" width="100%" align="center"></a>
+</div>
+</th>
+</tr>
+</table>
+
+# Contributors
+
+OpenMined and Syft appreciates all contributors, if you would like to fix a bug or suggest a new feature, please see our [guidelines](https://openmined.github.io/PySyft/developer_guide/index.html).<br />
+
+<img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/contributors_light.jpg" alt="Contributors" width="100%" />
+
+# Supporters
+
+<table border="0">
+<tr>
+<th align="center">
+<a href="https://sloan.org/"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/logo_sloan.png" /></a>
+</th>
+<th align="center">
+<a href="https://opensource.fb.com/"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/logo_meta.png" /></a>
+</th>
+<th align="center">
+<a href="https://pytorch.org/"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/logo_torch.png" /></a>
+</th>
+<th align="center">
+<a href="https://www.udacity.com/"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/logo_udacity.png" /></a>
+</th>
+<th align="center">
+<a href="https://summerofcode.withgoogle.com/"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/logo_gsoc.png" /></a>
+</th>
+<th align="center">
+<a href="https://developers.google.com/season-of-docs"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/logo_gsod.png" /></a>
+</th>
+<th align="center">
+
+<img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/logo_arkhn_light.png" />
+
+</th>
+<th align="center">
+<img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/logo_cape_light.png" />
+</th>
+<th align="center">
+<a href="https://begin.ai/"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/logo_begin.png" /></a>
+</th>
+</tr>
+</table>
+
+# Open Collective
+
+`OpenMined` is a fiscally sponsored `501(c)(3)` in the USA. We are funded by our generous supporters on <a href="https://opencollective.com/openmined">Open Collective</a>. <br /><br />
+
+<img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/opencollective_light.png" alt="Contributors" width="100%" />
+
+# Disclaimer
+
+Syft is under active development and is not yet ready for pilots on private data without our assistance. As early access participants, please contact us via [Slack](https://slack.openmined.org/) or email if you would like to ask a question or have a use case that you would like to discuss.
+
+# License
+
+[Apache License 2.0](LICENSE)<br />
+<a href="https://www.flaticon.com/free-icons/person" title="person icons">Person icons created by Freepik - Flaticon</a>
+
+<!-- 🥇 -->
+
+
+%package -n python3-syft
+Summary: Perform numpy-like analysis on data that remains in someone elses server
+Provides: python-syft
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-syft
+<div align="left"> <a href="https://pypi.org/project/syft/"><img src="https://pepy.tech/badge/syft" /></a> <a href="https://pypi.org/project/syft/"><img src="https://badge.fury.io/py/syft.svg" /></a> <a href="https://hub.docker.com/u/openmined"><img src="https://img.shields.io/badge/docker-images-blue?logo=docker" /></a> <a href="https://github.com/OpenMined/PySyft/actions/workflows/nightlies.yml"><img src="https://github.com/OpenMined/PySyft/actions/workflows/nightlies.yml/badge.svg?branch=dev" /></a> <a href="https://slack.openmined.org/"><img src="https://img.shields.io/badge/chat-on%20slack-purple?logo=slack" /></a> <a href="https://openmined.github.io/PySyft/"><img src="https://img.shields.io/badge/read-docs-yellow?logo=mdbook" /></a>
+<br /><br /></div>
+
+<img alt="Syft Logo" src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/title_syft_light.png" width="200px" />
+
+Perform `numpy`-like analysis on `data` that remains in `someone else's` server
+
+<div align="left">
+<img alt="Syft Logo" src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/header.png" alt="Syft Overview" width="100%" />
+</div>
+
+# Quickstart
+
+✅ `Linux` ✅ `macOS`\* ✅ `Windows`†‡
+
+## Install syft on Python 3.9 - 3.10
+
+```bash
+$ pip install -U syft -f https://whls.blob.core.windows.net/unstable/index.html
+```
+
+## Launch a python dev Domain
+
+```python
+# from Jupyter / Python
+import syft as sy
+sy.requires(">=0.8,<0.8.1")
+node = sy.orchestra.launch(name="my-domain", port=8080, dev_mode=True, reset=True)
+```
+
+```bash
+# or from the command line
+$ syft launch --name=my-domain --port=8080 --reset=True
+
+Starting syft-node server on 0.0.0.0:8080
+```
+
+## Connect with our Python Client
+
+```python
+import syft as sy
+sy.requires(">=0.8,<0.8.1")
+domain_client = sy.login(port=8080, email="info@openmined.org", password="changethis")
+```
+
+## Deploy to a Container Engine or Cloud
+
+1. Install our handy 🛵 cli tool which makes deploying a Domain or Gateway server a one-liner:
+ `pip install -U hagrid`
+
+2. Then run our interactive jupyter Install 🧙🏽‍♂️ Wizard<sup>BETA</sup>:
+ `hagrid quickstart`
+
+3. In the tutorial you will learn how to install and deploy:
+ `PySyft` = our `numpy`-like 🐍 Python library for computing on `private data` in someone else's `Domain`
+
+ `PyGrid` = our 🐳 `docker` / 🐧 `vm` `Domain` & `Gateway` Servers where `private data` lives
+
+4. During quickstart we will deploy `PyGrid` to localhost with 🐳 `docker`, however 🛵 HAGrid can deploy to `podman` or a 🐧 `ubuntu` VM on `azure` / `gcp` / `ANY_IP_ADDRESS` by using 🔨 `ansible`†
+
+## Docs and Support
+
+- 📝 <a href="https://github.com/OpenMined/PySyft/blob/0.8/notebooks/api">API Example Notebooks</a>
+- 📚 <a href="https://openmined.github.io/PySyft/">Docs</a>
+- `#support` on <a href="https://slack.openmined.org/">Slack</a>
+
+# Install Notes
+
+- HAGrid 0.3 Requires: 🐍 `python` 🐙 `git` - Run: `pip install -U hagrid`
+- Interactive Install 🧙🏽‍♂️ Wizard<sup>BETA</sup> Requires 🛵 `hagrid`: - Run: `hagrid quickstart`
+ †`Windows` does not support `ansible`, preventing some remote deployment targets
+- PySyft 0.8 Requires: 🐍 `python 3.10` - Run: `pip install -U syft`
+ \*`macOS` Apple Silicon users might need cmake: `brew install cmake`
+ ‡`Windows` users must run this first: `pip install jaxlib==0.3.14 -f https://whls.blob.core.windows.net/unstable/index.html`
+- PyGrid Requires: 🐳 `docker` or 🐧 `ubuntu` VM - Run: `hagrid launch ...`
+
+# Versions
+
+`0.9.0` (Beta) - `dev` branch 👈🏽 <a href="https://github.com/OpenMined/PySyft/blob/dev/notebooks/api/0.9">API</a>
+`0.8.0` (Stable) - <a href="https://github.com/OpenMined/PySyft/blob/0.8/notebooks/api/0.8">API</a>
+
+Deprecated:
+
+- `0.7.0` - <a href="https://github.com/OpenMined/courses/tree/introduction-to-remote-data-science-dev">Course 3 Updated</a>
+- `0.6.0` - <a href="https://github.com/OpenMined/courses/tree/introduction-to-remote-data-science">Course 3</a>
+- `0.5.1` - <a href="https://github.com/OpenMined/courses/tree/foundations-of-private-computation">Course 2</a> + M1 Hotfix
+- `0.2.0` - `0.5.0`
+
+PySyft and PyGrid use the same `version` and its best to match them up where possible. We release weekly betas which can be used in each context:
+
+PySyft (Stable): `pip install -U syft`
+PyGrid (Stable) `hagrid launch ... tag=latest`
+
+PySyft (Beta): `pip install -U syft --pre`
+PyGrid (Beta): `hagrid launch ... tag=beta`
+
+HAGrid is a cli / deployment tool so the latest version of `hagrid` is usually the best.
+
+# What is Syft?
+
+<img align="right" src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/logo_big.png" alt="Syft" height="250" style="padding-left:30px;">
+
+`Syft` is OpenMined's `open source` stack that provides `secure` and `private` Data Science in Python. Syft decouples `private data` from model training, using techniques like [Federated Learning](https://ai.googleblog.com/2017/04/federated-learning-collaborative.html), [Differential Privacy](https://en.wikipedia.org/wiki/Differential_privacy), and [Encrypted Computation](https://en.wikipedia.org/wiki/Homomorphic_encryption). This is done with a `numpy`-like interface and integration with `Deep Learning` frameworks, so that you as a `Data Scientist` can maintain your current workflow while using these new `privacy-enhancing techniques`.
+
+### Why should I use Syft?
+
+`Syft` allows a `Data Scientist` to ask `questions` about a `dataset` and, within `privacy limits` set by the `data owner`, get `answers` to those `questions`, all without obtaining a `copy` of the data itself. We call this process `Remote Data Science`. It means in a wide variety of `domains` across society, the current `risks` of sharing information (`copying` data) with someone such as, privacy invasion, IP theft and blackmail will no longer prevent the vast `benefits` such as innovation, insights and scientific discovery which secure access will provide.
+
+No more cold calls to get `access` to a dataset. No more weeks of `wait times` to get a `result` on your `query`. It also means `1000x more data` in every domain. PySyft opens the doors to a streamlined Data Scientist `workflow`, all with the individual's `privacy` at its heart.
+
+# Tutorials
+
+<table border="5" bordercolor="grey">
+<tr>
+<th align="center">
+<img width="441" height="1">
+<div align="center">
+<img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/personas_image/dataowner.png" alt="" width="100" height="100" align="center">
+<p>Data Owner</p></div>
+</th>
+<th align="center">
+<img width="441" height="1">
+<div align="center"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/personas_image/datascientist.png" alt="" width="100" height="100" align="center">
+<p>Data Scientist</p></div>
+
+</th>
+<th align="center">
+<img width="441" height="1">
+<div align="center">
+<img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/personas_image/dataengineer.png" alt="" width="100" height="100" align="center">
+<p>Data Engineer</p>
+</div>
+</th>
+</tr>
+<tr>
+<td valign="top">
+
+- <a href="https://github.com/OpenMined/PySyft/blob/0.8/notebooks/quickstart/data-owner/00-deploy-domain.ipynb">Deploy a Domain Server</a>
+- <a href="https://github.com/OpenMined/PySyft/blob/0.8/notebooks/quickstart/data-owner/01-upload-data.ipynb">Upload Private Data</a>
+- <a href="https://github.com/OpenMined/PySyft/blob/0.8/notebooks/quickstart/data-owner/02-create-account-configure-pb.ipynb">Create Accounts</a>
+- Manage Privacy Budget</a>
+- <a href="https://github.com/OpenMined/PySyft/blob/0.8/notebooks/quickstart/data-owner/03-join-network.ipynb">Join a Network</a>
+- Learn how PETs streamline Data Policies
+
+</td>
+<td valign="top">
+
+- Install Syft</a>
+- Connect to a Domain</a>
+- Search for Datasets</a>
+- Train Models
+- Retrieve Secure Results
+- Learn Differential Privacy
+
+</td>
+<td valign="top">
+
+- Setup Dev Mode</a>
+- Deploy to Azure
+- Deploy to GCP
+- Deploy to Kubernetes
+- Customize Networking
+- Modify PyGrid UI
+</td>
+</tr>
+</table>
+
+# Terminology
+
+<table border="5" bordercolor="grey">
+<tr>
+<th align="center">
+<img width="441" height="1">
+<p>👨🏻‍💼 Data Owners</p>
+</th>
+<th align="center">
+<img width="441" height="1">
+<p>👩🏽‍🔬 Data Scientists</p>
+</th>
+</tr>
+<tr>
+<td valign="top">
+<!-- REMOVE THE BACKSLASHES -->
+
+Provide `datasets` which they would like to make available for `study` by an `outside party` they may or may not `fully trust` has good intentions.
+
+</td>
+<td valign="top">
+<!-- REMOVE THE BACKSLASHES -->
+
+Are end `users` who desire to perform `computations` or `answer` a specific `question` using one or more data owners' `datasets`.
+
+</td>
+</tr>
+<tr>
+<th align="center">
+<img width="441" height="1">
+<p>🏰 Domain Server</p>
+</th>
+<th align="center">
+<img width="441" height="1">
+<p>🔗 Gateway Server</p>
+</th>
+</tr>
+<tr>
+<td valign="top">
+<!-- REMOVE THE BACKSLASHES -->
+
+Manages the `remote study` of the data by a `Data Scientist` and allows the `Data Owner` to manage the `data` and control the `privacy guarantees` of the subjects under study. It also acts as a `gatekeeper` for the `Data Scientist's` access to the data to compute and experiment with the results.
+
+</td>
+<td valign="top">
+<!-- REMOVE THE BACKSLASHES -->
+
+Provides services to a group of `Data Owners` and `Data Scientists`, such as dataset `search` and bulk `project approval` (legal / technical) to participate in a project. A gateway server acts as a bridge between it's members (`Domains`) and their subscribers (`Data Scientists`) and can provide access to a collection of `domains` at once.</td>
+
+</tr>
+<tr>
+</table>
+
+# Community
+
+<table border="5" bordercolor="grey">
+<tr>
+<th align="center" valign="top">
+<img width="441" height="1">
+<div align="center">
+
+<img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/panel_slack_title_light.png" alt="" width="100%" align="center" />
+
+<a href="https://slack.openmined.org/"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/panel_slack.png" alt="" width="100%" align="center" /></a>
+
+</div>
+</th>
+<th align="center" valign="top">
+<img width="441" height="1">
+<div align="center">
+
+<img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/panel_title_videos_papers_light.png" alt="" width="100%" align="center" />
+
+<p align="left"><sub><sup>
+🎥 <a href="https://www.youtube.com/watch?v=qVf0tPBzr2k">PETs: Remote Data Science Unleashed - R gov 2021</a><br />
+🎥 <a href="https://youtu.be/sCoDWKTbh3s?list=PL_lsbAsL_o2BQKXG7mkGFA8LSApCnhljL">Introduction to Remote Data Science - PyTorch 2021</a><br />
+🎥 <a href="https://youtu.be/kzLeTz_vIeQ?list=PL_lsbAsL_o2BtOz6KUfUI_Zla6Rg5dmyc">The Future of AI Tools - PyTorch 2020</a><br />
+🎥 <a href="https://www.youtube.com/watch?v=4zrU54VIK6k&t=1s">Privacy Preserving AI - MIT Deep Learning Series</a><br />
+🎥 <a href="https://www.youtube.com/watch?v=Pr4erdusiW0">Privacy-Preserving Data Science - TWiML Talk #241</a><br />
+🎥 <a href="https://www.youtube.com/watch?v=NJBBE_SN90A">Privacy Preserving AI - PyTorch Devcon 2019</a><br />
+📖 <a href="https://arxiv.org/pdf/2110.01315.pdf">Towards general-purpose infrastructure for protect...</a><br />
+📖 <a href="https://arxiv.org/pdf/2104.12385.pdf">Syft 0.5: A platform for universally deployable ...</a><br />
+📖 <a href="https://arxiv.org/pdf/1811.04017.pdf">A generic framework for privacy preserving deep ...</a>
+</sup></sup></p>
+</div>
+</th>
+<th align="center" valign="top">
+<img width="441" height="1">
+<div align="center">
+
+<img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/panel_padawan_title_light.png" alt="" width="100%" align="center" />
+
+<a href="https://blog.openmined.org/work-on-ais-most-exciting-frontier-no-phd-required/"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/panel_padawan.png" alt="" width="100%" align="center"></a>
+
+</div>
+</th>
+</tr>
+</table>
+
+# Courses
+
+<table border="5" bordercolor="grey">
+<tr>
+<th align="center">
+<img width="441" height="1">
+<div align="center">
+<a href="https://courses.openmined.org/courses/our-privacy-opportunity"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/course_privacy.png" alt="" width="100%" align="center" /></a>
+</th>
+<th align="center">
+<img width="441" height="1">
+<div align="center">
+<a href="https://courses.openmined.org/courses/foundations-of-private-computation"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/course_foundations.png" alt="" width="100%" align="center" /></a>
+</div>
+</th>
+<th align="center">
+<img width="441" height="1">
+<div align="center">
+<a href="https://courses.openmined.org/courses/introduction-to-remote-data-science"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/course_introduction.png" alt="" width="100%" align="center"></a>
+</div>
+</th>
+</tr>
+</table>
+
+# Contributors
+
+OpenMined and Syft appreciates all contributors, if you would like to fix a bug or suggest a new feature, please see our [guidelines](https://openmined.github.io/PySyft/developer_guide/index.html).<br />
+
+<img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/contributors_light.jpg" alt="Contributors" width="100%" />
+
+# Supporters
+
+<table border="0">
+<tr>
+<th align="center">
+<a href="https://sloan.org/"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/logo_sloan.png" /></a>
+</th>
+<th align="center">
+<a href="https://opensource.fb.com/"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/logo_meta.png" /></a>
+</th>
+<th align="center">
+<a href="https://pytorch.org/"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/logo_torch.png" /></a>
+</th>
+<th align="center">
+<a href="https://www.udacity.com/"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/logo_udacity.png" /></a>
+</th>
+<th align="center">
+<a href="https://summerofcode.withgoogle.com/"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/logo_gsoc.png" /></a>
+</th>
+<th align="center">
+<a href="https://developers.google.com/season-of-docs"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/logo_gsod.png" /></a>
+</th>
+<th align="center">
+
+<img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/logo_arkhn_light.png" />
+
+</th>
+<th align="center">
+<img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/logo_cape_light.png" />
+</th>
+<th align="center">
+<a href="https://begin.ai/"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/logo_begin.png" /></a>
+</th>
+</tr>
+</table>
+
+# Open Collective
+
+`OpenMined` is a fiscally sponsored `501(c)(3)` in the USA. We are funded by our generous supporters on <a href="https://opencollective.com/openmined">Open Collective</a>. <br /><br />
+
+<img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/opencollective_light.png" alt="Contributors" width="100%" />
+
+# Disclaimer
+
+Syft is under active development and is not yet ready for pilots on private data without our assistance. As early access participants, please contact us via [Slack](https://slack.openmined.org/) or email if you would like to ask a question or have a use case that you would like to discuss.
+
+# License
+
+[Apache License 2.0](LICENSE)<br />
+<a href="https://www.flaticon.com/free-icons/person" title="person icons">Person icons created by Freepik - Flaticon</a>
+
+<!-- 🥇 -->
+
+
+%package help
+Summary: Development documents and examples for syft
+Provides: python3-syft-doc
+%description help
+<div align="left"> <a href="https://pypi.org/project/syft/"><img src="https://pepy.tech/badge/syft" /></a> <a href="https://pypi.org/project/syft/"><img src="https://badge.fury.io/py/syft.svg" /></a> <a href="https://hub.docker.com/u/openmined"><img src="https://img.shields.io/badge/docker-images-blue?logo=docker" /></a> <a href="https://github.com/OpenMined/PySyft/actions/workflows/nightlies.yml"><img src="https://github.com/OpenMined/PySyft/actions/workflows/nightlies.yml/badge.svg?branch=dev" /></a> <a href="https://slack.openmined.org/"><img src="https://img.shields.io/badge/chat-on%20slack-purple?logo=slack" /></a> <a href="https://openmined.github.io/PySyft/"><img src="https://img.shields.io/badge/read-docs-yellow?logo=mdbook" /></a>
+<br /><br /></div>
+
+<img alt="Syft Logo" src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/title_syft_light.png" width="200px" />
+
+Perform `numpy`-like analysis on `data` that remains in `someone else's` server
+
+<div align="left">
+<img alt="Syft Logo" src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/header.png" alt="Syft Overview" width="100%" />
+</div>
+
+# Quickstart
+
+✅ `Linux` ✅ `macOS`\* ✅ `Windows`†‡
+
+## Install syft on Python 3.9 - 3.10
+
+```bash
+$ pip install -U syft -f https://whls.blob.core.windows.net/unstable/index.html
+```
+
+## Launch a python dev Domain
+
+```python
+# from Jupyter / Python
+import syft as sy
+sy.requires(">=0.8,<0.8.1")
+node = sy.orchestra.launch(name="my-domain", port=8080, dev_mode=True, reset=True)
+```
+
+```bash
+# or from the command line
+$ syft launch --name=my-domain --port=8080 --reset=True
+
+Starting syft-node server on 0.0.0.0:8080
+```
+
+## Connect with our Python Client
+
+```python
+import syft as sy
+sy.requires(">=0.8,<0.8.1")
+domain_client = sy.login(port=8080, email="info@openmined.org", password="changethis")
+```
+
+## Deploy to a Container Engine or Cloud
+
+1. Install our handy 🛵 cli tool which makes deploying a Domain or Gateway server a one-liner:
+ `pip install -U hagrid`
+
+2. Then run our interactive jupyter Install 🧙🏽‍♂️ Wizard<sup>BETA</sup>:
+ `hagrid quickstart`
+
+3. In the tutorial you will learn how to install and deploy:
+ `PySyft` = our `numpy`-like 🐍 Python library for computing on `private data` in someone else's `Domain`
+
+ `PyGrid` = our 🐳 `docker` / 🐧 `vm` `Domain` & `Gateway` Servers where `private data` lives
+
+4. During quickstart we will deploy `PyGrid` to localhost with 🐳 `docker`, however 🛵 HAGrid can deploy to `podman` or a 🐧 `ubuntu` VM on `azure` / `gcp` / `ANY_IP_ADDRESS` by using 🔨 `ansible`†
+
+## Docs and Support
+
+- 📝 <a href="https://github.com/OpenMined/PySyft/blob/0.8/notebooks/api">API Example Notebooks</a>
+- 📚 <a href="https://openmined.github.io/PySyft/">Docs</a>
+- `#support` on <a href="https://slack.openmined.org/">Slack</a>
+
+# Install Notes
+
+- HAGrid 0.3 Requires: 🐍 `python` 🐙 `git` - Run: `pip install -U hagrid`
+- Interactive Install 🧙🏽‍♂️ Wizard<sup>BETA</sup> Requires 🛵 `hagrid`: - Run: `hagrid quickstart`
+ †`Windows` does not support `ansible`, preventing some remote deployment targets
+- PySyft 0.8 Requires: 🐍 `python 3.10` - Run: `pip install -U syft`
+ \*`macOS` Apple Silicon users might need cmake: `brew install cmake`
+ ‡`Windows` users must run this first: `pip install jaxlib==0.3.14 -f https://whls.blob.core.windows.net/unstable/index.html`
+- PyGrid Requires: 🐳 `docker` or 🐧 `ubuntu` VM - Run: `hagrid launch ...`
+
+# Versions
+
+`0.9.0` (Beta) - `dev` branch 👈🏽 <a href="https://github.com/OpenMined/PySyft/blob/dev/notebooks/api/0.9">API</a>
+`0.8.0` (Stable) - <a href="https://github.com/OpenMined/PySyft/blob/0.8/notebooks/api/0.8">API</a>
+
+Deprecated:
+
+- `0.7.0` - <a href="https://github.com/OpenMined/courses/tree/introduction-to-remote-data-science-dev">Course 3 Updated</a>
+- `0.6.0` - <a href="https://github.com/OpenMined/courses/tree/introduction-to-remote-data-science">Course 3</a>
+- `0.5.1` - <a href="https://github.com/OpenMined/courses/tree/foundations-of-private-computation">Course 2</a> + M1 Hotfix
+- `0.2.0` - `0.5.0`
+
+PySyft and PyGrid use the same `version` and its best to match them up where possible. We release weekly betas which can be used in each context:
+
+PySyft (Stable): `pip install -U syft`
+PyGrid (Stable) `hagrid launch ... tag=latest`
+
+PySyft (Beta): `pip install -U syft --pre`
+PyGrid (Beta): `hagrid launch ... tag=beta`
+
+HAGrid is a cli / deployment tool so the latest version of `hagrid` is usually the best.
+
+# What is Syft?
+
+<img align="right" src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/logo_big.png" alt="Syft" height="250" style="padding-left:30px;">
+
+`Syft` is OpenMined's `open source` stack that provides `secure` and `private` Data Science in Python. Syft decouples `private data` from model training, using techniques like [Federated Learning](https://ai.googleblog.com/2017/04/federated-learning-collaborative.html), [Differential Privacy](https://en.wikipedia.org/wiki/Differential_privacy), and [Encrypted Computation](https://en.wikipedia.org/wiki/Homomorphic_encryption). This is done with a `numpy`-like interface and integration with `Deep Learning` frameworks, so that you as a `Data Scientist` can maintain your current workflow while using these new `privacy-enhancing techniques`.
+
+### Why should I use Syft?
+
+`Syft` allows a `Data Scientist` to ask `questions` about a `dataset` and, within `privacy limits` set by the `data owner`, get `answers` to those `questions`, all without obtaining a `copy` of the data itself. We call this process `Remote Data Science`. It means in a wide variety of `domains` across society, the current `risks` of sharing information (`copying` data) with someone such as, privacy invasion, IP theft and blackmail will no longer prevent the vast `benefits` such as innovation, insights and scientific discovery which secure access will provide.
+
+No more cold calls to get `access` to a dataset. No more weeks of `wait times` to get a `result` on your `query`. It also means `1000x more data` in every domain. PySyft opens the doors to a streamlined Data Scientist `workflow`, all with the individual's `privacy` at its heart.
+
+# Tutorials
+
+<table border="5" bordercolor="grey">
+<tr>
+<th align="center">
+<img width="441" height="1">
+<div align="center">
+<img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/personas_image/dataowner.png" alt="" width="100" height="100" align="center">
+<p>Data Owner</p></div>
+</th>
+<th align="center">
+<img width="441" height="1">
+<div align="center"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/personas_image/datascientist.png" alt="" width="100" height="100" align="center">
+<p>Data Scientist</p></div>
+
+</th>
+<th align="center">
+<img width="441" height="1">
+<div align="center">
+<img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/personas_image/dataengineer.png" alt="" width="100" height="100" align="center">
+<p>Data Engineer</p>
+</div>
+</th>
+</tr>
+<tr>
+<td valign="top">
+
+- <a href="https://github.com/OpenMined/PySyft/blob/0.8/notebooks/quickstart/data-owner/00-deploy-domain.ipynb">Deploy a Domain Server</a>
+- <a href="https://github.com/OpenMined/PySyft/blob/0.8/notebooks/quickstart/data-owner/01-upload-data.ipynb">Upload Private Data</a>
+- <a href="https://github.com/OpenMined/PySyft/blob/0.8/notebooks/quickstart/data-owner/02-create-account-configure-pb.ipynb">Create Accounts</a>
+- Manage Privacy Budget</a>
+- <a href="https://github.com/OpenMined/PySyft/blob/0.8/notebooks/quickstart/data-owner/03-join-network.ipynb">Join a Network</a>
+- Learn how PETs streamline Data Policies
+
+</td>
+<td valign="top">
+
+- Install Syft</a>
+- Connect to a Domain</a>
+- Search for Datasets</a>
+- Train Models
+- Retrieve Secure Results
+- Learn Differential Privacy
+
+</td>
+<td valign="top">
+
+- Setup Dev Mode</a>
+- Deploy to Azure
+- Deploy to GCP
+- Deploy to Kubernetes
+- Customize Networking
+- Modify PyGrid UI
+</td>
+</tr>
+</table>
+
+# Terminology
+
+<table border="5" bordercolor="grey">
+<tr>
+<th align="center">
+<img width="441" height="1">
+<p>👨🏻‍💼 Data Owners</p>
+</th>
+<th align="center">
+<img width="441" height="1">
+<p>👩🏽‍🔬 Data Scientists</p>
+</th>
+</tr>
+<tr>
+<td valign="top">
+<!-- REMOVE THE BACKSLASHES -->
+
+Provide `datasets` which they would like to make available for `study` by an `outside party` they may or may not `fully trust` has good intentions.
+
+</td>
+<td valign="top">
+<!-- REMOVE THE BACKSLASHES -->
+
+Are end `users` who desire to perform `computations` or `answer` a specific `question` using one or more data owners' `datasets`.
+
+</td>
+</tr>
+<tr>
+<th align="center">
+<img width="441" height="1">
+<p>🏰 Domain Server</p>
+</th>
+<th align="center">
+<img width="441" height="1">
+<p>🔗 Gateway Server</p>
+</th>
+</tr>
+<tr>
+<td valign="top">
+<!-- REMOVE THE BACKSLASHES -->
+
+Manages the `remote study` of the data by a `Data Scientist` and allows the `Data Owner` to manage the `data` and control the `privacy guarantees` of the subjects under study. It also acts as a `gatekeeper` for the `Data Scientist's` access to the data to compute and experiment with the results.
+
+</td>
+<td valign="top">
+<!-- REMOVE THE BACKSLASHES -->
+
+Provides services to a group of `Data Owners` and `Data Scientists`, such as dataset `search` and bulk `project approval` (legal / technical) to participate in a project. A gateway server acts as a bridge between it's members (`Domains`) and their subscribers (`Data Scientists`) and can provide access to a collection of `domains` at once.</td>
+
+</tr>
+<tr>
+</table>
+
+# Community
+
+<table border="5" bordercolor="grey">
+<tr>
+<th align="center" valign="top">
+<img width="441" height="1">
+<div align="center">
+
+<img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/panel_slack_title_light.png" alt="" width="100%" align="center" />
+
+<a href="https://slack.openmined.org/"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/panel_slack.png" alt="" width="100%" align="center" /></a>
+
+</div>
+</th>
+<th align="center" valign="top">
+<img width="441" height="1">
+<div align="center">
+
+<img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/panel_title_videos_papers_light.png" alt="" width="100%" align="center" />
+
+<p align="left"><sub><sup>
+🎥 <a href="https://www.youtube.com/watch?v=qVf0tPBzr2k">PETs: Remote Data Science Unleashed - R gov 2021</a><br />
+🎥 <a href="https://youtu.be/sCoDWKTbh3s?list=PL_lsbAsL_o2BQKXG7mkGFA8LSApCnhljL">Introduction to Remote Data Science - PyTorch 2021</a><br />
+🎥 <a href="https://youtu.be/kzLeTz_vIeQ?list=PL_lsbAsL_o2BtOz6KUfUI_Zla6Rg5dmyc">The Future of AI Tools - PyTorch 2020</a><br />
+🎥 <a href="https://www.youtube.com/watch?v=4zrU54VIK6k&t=1s">Privacy Preserving AI - MIT Deep Learning Series</a><br />
+🎥 <a href="https://www.youtube.com/watch?v=Pr4erdusiW0">Privacy-Preserving Data Science - TWiML Talk #241</a><br />
+🎥 <a href="https://www.youtube.com/watch?v=NJBBE_SN90A">Privacy Preserving AI - PyTorch Devcon 2019</a><br />
+📖 <a href="https://arxiv.org/pdf/2110.01315.pdf">Towards general-purpose infrastructure for protect...</a><br />
+📖 <a href="https://arxiv.org/pdf/2104.12385.pdf">Syft 0.5: A platform for universally deployable ...</a><br />
+📖 <a href="https://arxiv.org/pdf/1811.04017.pdf">A generic framework for privacy preserving deep ...</a>
+</sup></sup></p>
+</div>
+</th>
+<th align="center" valign="top">
+<img width="441" height="1">
+<div align="center">
+
+<img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/panel_padawan_title_light.png" alt="" width="100%" align="center" />
+
+<a href="https://blog.openmined.org/work-on-ais-most-exciting-frontier-no-phd-required/"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/panel_padawan.png" alt="" width="100%" align="center"></a>
+
+</div>
+</th>
+</tr>
+</table>
+
+# Courses
+
+<table border="5" bordercolor="grey">
+<tr>
+<th align="center">
+<img width="441" height="1">
+<div align="center">
+<a href="https://courses.openmined.org/courses/our-privacy-opportunity"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/course_privacy.png" alt="" width="100%" align="center" /></a>
+</th>
+<th align="center">
+<img width="441" height="1">
+<div align="center">
+<a href="https://courses.openmined.org/courses/foundations-of-private-computation"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/course_foundations.png" alt="" width="100%" align="center" /></a>
+</div>
+</th>
+<th align="center">
+<img width="441" height="1">
+<div align="center">
+<a href="https://courses.openmined.org/courses/introduction-to-remote-data-science"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/course_introduction.png" alt="" width="100%" align="center"></a>
+</div>
+</th>
+</tr>
+</table>
+
+# Contributors
+
+OpenMined and Syft appreciates all contributors, if you would like to fix a bug or suggest a new feature, please see our [guidelines](https://openmined.github.io/PySyft/developer_guide/index.html).<br />
+
+<img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/contributors_light.jpg" alt="Contributors" width="100%" />
+
+# Supporters
+
+<table border="0">
+<tr>
+<th align="center">
+<a href="https://sloan.org/"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/logo_sloan.png" /></a>
+</th>
+<th align="center">
+<a href="https://opensource.fb.com/"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/logo_meta.png" /></a>
+</th>
+<th align="center">
+<a href="https://pytorch.org/"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/logo_torch.png" /></a>
+</th>
+<th align="center">
+<a href="https://www.udacity.com/"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/logo_udacity.png" /></a>
+</th>
+<th align="center">
+<a href="https://summerofcode.withgoogle.com/"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/logo_gsoc.png" /></a>
+</th>
+<th align="center">
+<a href="https://developers.google.com/season-of-docs"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/logo_gsod.png" /></a>
+</th>
+<th align="center">
+
+<img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/logo_arkhn_light.png" />
+
+</th>
+<th align="center">
+<img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/logo_cape_light.png" />
+</th>
+<th align="center">
+<a href="https://begin.ai/"><img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/logo_begin.png" /></a>
+</th>
+</tr>
+</table>
+
+# Open Collective
+
+`OpenMined` is a fiscally sponsored `501(c)(3)` in the USA. We are funded by our generous supporters on <a href="https://opencollective.com/openmined">Open Collective</a>. <br /><br />
+
+<img src="https://raw.githubusercontent.com/OpenMined/PySyft/0.8/docs/img/opencollective_light.png" alt="Contributors" width="100%" />
+
+# Disclaimer
+
+Syft is under active development and is not yet ready for pilots on private data without our assistance. As early access participants, please contact us via [Slack](https://slack.openmined.org/) or email if you would like to ask a question or have a use case that you would like to discuss.
+
+# License
+
+[Apache License 2.0](LICENSE)<br />
+<a href="https://www.flaticon.com/free-icons/person" title="person icons">Person icons created by Freepik - Flaticon</a>
+
+<!-- 🥇 -->
+
+
+%prep
+%autosetup -n syft-0.8.0.post2
+
+%build
+%py3_build
+
+%install
+%py3_install
+install -d -m755 %{buildroot}/%{_pkgdocdir}
+if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
+if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
+if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
+if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
+pushd %{buildroot}
+if [ -d usr/lib ]; then
+ find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/lib64 ]; then
+ find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/bin ]; then
+ find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/sbin ]; then
+ find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+touch doclist.lst
+if [ -d usr/share/man ]; then
+ find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
+fi
+popd
+mv %{buildroot}/filelist.lst .
+mv %{buildroot}/doclist.lst .
+
+%files -n python3-syft -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Fri May 05 2023 Python_Bot <Python_Bot@openeuler.org> - 0.8.0.post2-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..0536fb6
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+6fa1ecd94daff18e76b0824adfb7d4d2 syft-0.8.0.post2.tar.gz