diff --git a/.vitepress/sidebar.ts b/.vitepress/sidebar.ts index 70d8f6c7..7bd72f74 100644 --- a/.vitepress/sidebar.ts +++ b/.vitepress/sidebar.ts @@ -188,14 +188,6 @@ export function getSidebar() { { text: 'USE AN iAPP', items: [ - { - text: 'Introduction', - link: '/guides/use-iapp/introduction', - }, - { - text: 'Getting Started', - link: '/guides/use-iapp/getting-started', - }, { text: 'How to Pay the Executions', link: '/guides/use-iapp/how-to-pay-executions', diff --git a/src/assets/overview/deal-lifecycle.png b/src/assets/overview/deal-lifecycle.png new file mode 100644 index 00000000..653ca000 Binary files /dev/null and b/src/assets/overview/deal-lifecycle.png differ diff --git a/src/assets/use-iapp/iexec-actors-diagram.svg b/src/assets/use-iapp/iexec-actors-diagram.svg deleted file mode 100644 index 31fc8b1e..00000000 --- a/src/assets/use-iapp/iexec-actors-diagram.svg +++ /dev/null @@ -1,103 +0,0 @@ - -

Results

iExec Network

Workerpool

Application & Data

Requester

👤 Requester

📱 iApp

🔐 Protected Data

👨‍💻 iApp Developer

👤 Data Provider

🏭 Workerpool Manager

⚙️ Worker

💰 PoCo

📋 Deal

📤 Results

\ No newline at end of file diff --git a/src/get-started/overview/what-is-iexec.md b/src/get-started/overview/what-is-iexec.md index 2d99ec68..c8f75e5d 100644 --- a/src/get-started/overview/what-is-iexec.md +++ b/src/get-started/overview/what-is-iexec.md @@ -12,35 +12,37 @@ developers build privacy-preserving apps. ## SpeedRun The Protocol -### Step 1: Protect Data +![iExec Deal Lifecycle](/assets/overview/deal-lifecycle.png) -Your sensitive data gets encrypted and stored online. Only you control who can -access it. +### Step 1: Prepare Resources -→ **DevTool**: [DataProtector](/references/dataProtector) handles this for you +- **Data Provider** protects sensitive data with encryption and sets access + rules. + - → **DevTool**: [DataProtector](/references/dataProtector) +- **App Provider** deploys an iApp to process data securely. + - → **DevTool**: [iApp Generator](/references/iapp-generator) -### Step 2: Secure Computing (Workers) +### Step 2: Create a Deal -Code runs inside **secure enclaves** (Trusted Execution Environments - TEEs) on -iExec workers. The worker can access your data to process it, but only within -the privacy-safe TEE environment - your data never leaves the secure bubble. +**Requester** submits a computation request. The **PoCo smart contract** +automatically matches and brings together all required resources: the iApp, +protected data, and available workerpool. -### Step 3: Run iApp +→ **Guides**: +[Run iApp with ProtectedData](/guides/use-iapp/run-iapp-with-ProtectedData), +[Run iApp without ProtectedData](/guides/use-iapp/run-iapp-without-ProtectedData) -You submit a **Task** = "Run this iApp on this protected data". The protocol -finds available workers and executes everything confidentially. +### Step 3: Execute in TEE -→ **DevTool**: [iApp Generator](/references/iapp-generator) helps you create and -deploy iApp +**Workers** from the selected workerpool download the iApp and execute it inside +**secure enclaves** (TEEs). Your data is processed confidentially - workers can +run computations but never access raw data outside the TEE. -### Step 4: Get Results +### Step 4: Deliver Results & Pay -Results come back **encrypted to you**. Workers never see raw data, you never -lose control. - -``` -Protected Data + iApp + Worker = Task → Encrypted Result -``` +Results are encrypted and delivered back to the requester. **RLC tokens** are +automatically distributed to all participants (app provider, data provider, +workerpool) based on their contribution. ## What each piece does diff --git a/src/guides/build-iapp/advanced/quick-start.md b/src/guides/build-iapp/advanced/quick-start.md index 3d502c47..becc20c3 100644 --- a/src/guides/build-iapp/advanced/quick-start.md +++ b/src/guides/build-iapp/advanced/quick-start.md @@ -18,6 +18,9 @@ test blockchain. ## Install the iExec SDK +For complete installation instructions and requirements, see the +[iExec SDK documentation](/references/sdk). + Requirements: [![npm version](https://img.shields.io/badge/nodejs-%3E=18.0.0-brightgreen.svg)](https://nodejs.org/en/) diff --git a/src/guides/build-iapp/advanced/result-callback.md b/src/guides/build-iapp/advanced/result-callback.md index 5b292acb..c2a48d04 100644 --- a/src/guides/build-iapp/advanced/result-callback.md +++ b/src/guides/build-iapp/advanced/result-callback.md @@ -106,8 +106,8 @@ contract address. After completion, the protocol calls your contract, passing the `callback-data` bytes. -First install the iExec SDK if you have not already (see -[Getting Started](/guides/use-iapp/getting-started)). +First install the iExec SDK if you have not already (see the +[iExec SDK documentation](/references/sdk)). ```ts twoslash import { IExec, utils } from 'iexec'; diff --git a/src/guides/build-iapp/build-&-test.md b/src/guides/build-iapp/build-&-test.md index 757fa4da..dd14952b 100644 --- a/src/guides/build-iapp/build-&-test.md +++ b/src/guides/build-iapp/build-&-test.md @@ -29,9 +29,28 @@ iApp Generator handles all the low-level complexity for you. ## Prerequisites -Before getting started, make sure you have the required tools installed. See the -[iApp Generator Getting Started guide](/references/iapp-generator/getting-started) -for detailed prerequisites and installation instructions. +First, install iApp Generator in your project (for more details see +[iApp Generator Getting Started](/references/iapp-generator/getting-started)): + +::: code-group + +```bash [npm] +npm install -g @iexec/iapp-generator +``` + +```bash [yarn] +yarn global add @iexec/iapp-generator +``` + +```bash [pnpm] +pnpm add -g @iexec/iapp-generator +``` + +```bash [bun] +bun add -g @iexec/iapp-generator +``` + +::: ## Quick Start diff --git a/src/guides/build-iapp/inputs.md b/src/guides/build-iapp/inputs.md index 10810d71..ced46ee6 100644 --- a/src/guides/build-iapp/inputs.md +++ b/src/guides/build-iapp/inputs.md @@ -27,7 +27,8 @@ within the TEE environment. ::: tip You can also execute iApp outside of DataProtector using other methods. See the -[Use an iApp guide](/guides/use-iapp/introduction) for more information. +[Run iApp without ProtectedData](/guides/use-iapp/run-iapp-without-ProtectedData) +guide for more information. ::: diff --git a/src/guides/build-iapp/manage-access.md b/src/guides/build-iapp/manage-access.md index 2d293750..c56f7fe0 100644 --- a/src/guides/build-iapp/manage-access.md +++ b/src/guides/build-iapp/manage-access.md @@ -28,7 +28,7 @@ Currently, order management is not yet available in iApp Generator. This guide shows you how to use the iExec SDK CLI to create and manage your app orders. For complete SDK documentation, check the -[iExec SDK GitHub repository](https://github.com/iExecBlockchainComputing/iexec-sdk). +[iExec SDK documentation](/references/sdk). ::: @@ -67,7 +67,8 @@ Here's an example app order for a sentiment analysis iApp: ### Step 1: Install the iExec SDK Since iApp Generator doesn't handle orders yet, you need to use the iExec SDK -CLI: +CLI. For detailed installation instructions, see the +[iExec SDK documentation](/references/sdk). ::: code-group @@ -304,8 +305,7 @@ Next steps: ### Technical deep dive -- **[iExec SDK Documentation](https://github.com/iExecBlockchainComputing/iexec-sdk)** - - Complete CLI reference +- **[iExec SDK Documentation](/references/sdk)** - Complete CLI reference