Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
177 changes: 177 additions & 0 deletions src/get-started/overview/iapp.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,177 @@
---
title: What is an iApp?

Check notice on line 2 in src/get-started/overview/iapp.md

View workflow job for this annotation

GitHub Actions / vale

[vale] src/get-started/overview/iapp.md#L2

[Google.Contractions] Use 'what's' instead of 'What is'.
Raw output
{"message": "[Google.Contractions] Use 'what's' instead of 'What is'.", "location": {"path": "src/get-started/overview/iapp.md", "range": {"start": {"line": 2, "column": 8}}}, "severity": "INFO"}
description:
Learn about iExec Applications (iApp) - confidential computing apps that
process sensitive data in secure TEE environments. Build privacy-preserving
AI, data analysis, and Web3 apps.
---

<script setup>
import Banner from '../../components/Banner.vue'
import CardWithBorder from '@/components/CardWithBorder.vue';
import CardGrid from '@/components/CardGrid.vue';
import CardWithoutBorder from '@/components/CardWithoutBorder.vue';
</script>

# What is an iApp?

Check notice on line 16 in src/get-started/overview/iapp.md

View workflow job for this annotation

GitHub Actions / vale

[vale] src/get-started/overview/iapp.md#L16

[Google.Contractions] Use 'what's' instead of 'What is'.
Raw output
{"message": "[Google.Contractions] Use 'what's' instead of 'What is'.", "location": {"path": "src/get-started/overview/iapp.md", "range": {"start": {"line": 16, "column": 3}}}, "severity": "INFO"}

An iExec Application (iApp) is an application that runs inside a confidential

Check warning on line 18 in src/get-started/overview/iapp.md

View workflow job for this annotation

GitHub Actions / vale

[vale] src/get-started/overview/iapp.md#L18

[Google.WordList] Use 'app' instead of 'application'.
Raw output
{"message": "[Google.WordList] Use 'app' instead of 'application'.", "location": {"path": "src/get-started/overview/iapp.md", "range": {"start": {"line": 18, "column": 35}}}, "severity": "WARNING"}
environment (TEEs) to process Protected Data (created with DataProtector).

Your Python scripts, AI models, or data processors can securely process
protected data inside a TEE.

## Why iApp Matters?

Check warning on line 24 in src/get-started/overview/iapp.md

View workflow job for this annotation

GitHub Actions / vale

[vale] src/get-started/overview/iapp.md#L24

[Google.Headings] 'Why iApp Matters?' should use sentence-style capitalization.
Raw output
{"message": "[Google.Headings] 'Why iApp Matters?' should use sentence-style capitalization.", "location": {"path": "src/get-started/overview/iapp.md", "range": {"start": {"line": 24, "column": 4}}}, "severity": "WARNING"}

iApps provide privacy capabilities, allowing you to process sensitive data while

Check failure on line 26 in src/get-started/overview/iapp.md

View workflow job for this annotation

GitHub Actions / vale

[vale] src/get-started/overview/iapp.md#L26

[Vale.Spelling] Did you really mean 'iApps'?
Raw output
{"message": "[Vale.Spelling] Did you really mean 'iApps'?", "location": {"path": "src/get-started/overview/iapp.md", "range": {"start": {"line": 26, "column": 1}}}, "severity": "ERROR"}
keeping it private and secure.

Imagine you want to build:

<CardWithoutBorder>

- An AI that analyzes personal health data
- An email tool that needs access to contact lists
- A financial advisor that processes bank statements
- A content filter that reads private messages

</CardWithoutBorder>

Users have this data, but they won't trust your regular app with it. **With
Privacy iApps, they will.**

Check failure on line 41 in src/get-started/overview/iapp.md

View workflow job for this annotation

GitHub Actions / vale

[vale] src/get-started/overview/iapp.md#L41

[Vale.Spelling] Did you really mean 'iApps'?
Raw output
{"message": "[Vale.Spelling] Did you really mean 'iApps'?", "location": {"path": "src/get-started/overview/iapp.md", "range": {"start": {"line": 41, "column": 9}}}, "severity": "ERROR"}

Check warning on line 41 in src/get-started/overview/iapp.md

View workflow job for this annotation

GitHub Actions / vale

[vale] src/get-started/overview/iapp.md#L41

[Google.Will] Avoid using 'will'.
Raw output
{"message": "[Google.Will] Avoid using 'will'.", "location": {"path": "src/get-started/overview/iapp.md", "range": {"start": {"line": 41, "column": 21}}}, "severity": "WARNING"}

**You gain their trust. They gain their privacy. Everyone wins.**

## Key Concepts

Check warning on line 45 in src/get-started/overview/iapp.md

View workflow job for this annotation

GitHub Actions / vale

[vale] src/get-started/overview/iapp.md#L45

[Google.Headings] 'Key Concepts' should use sentence-style capitalization.
Raw output
{"message": "[Google.Headings] 'Key Concepts' should use sentence-style capitalization.", "location": {"path": "src/get-started/overview/iapp.md", "range": {"start": {"line": 45, "column": 4}}}, "severity": "WARNING"}

<CardWithBorder>

✅ **True Privacy:** Users never expose their raw data. Your app processes it

Check warning on line 49 in src/get-started/overview/iapp.md

View workflow job for this annotation

GitHub Actions / vale

[vale] src/get-started/overview/iapp.md#L49

[Google.Colons] ': U' should be in lowercase.
Raw output
{"message": "[Google.Colons] ': U' should be in lowercase.", "location": {"path": "src/get-started/overview/iapp.md", "range": {"start": {"line": 49, "column": 1}}}, "severity": "WARNING"}
privately inside secure enclaves.

✅ **Trusted Execution:** iExec ensures your code runs inside a Trusted
Execution Environment (TEE), guaranteeing only the specified Docker image
executes in a secure, isolated environment.

✅ **Decentralized Infrastructure:** No single point of failure. Your app runs

Check warning on line 56 in src/get-started/overview/iapp.md

View workflow job for this annotation

GitHub Actions / vale

[vale] src/get-started/overview/iapp.md#L56

[Google.Colons] ': N' should be in lowercase.
Raw output
{"message": "[Google.Colons] ': N' should be in lowercase.", "location": {"path": "src/get-started/overview/iapp.md", "range": {"start": {"line": 56, "column": 5}}}, "severity": "WARNING"}
across a distributed network of workers.

✅ **Zero Trust Architecture:** User data is protected by hardware-based TEEs,

Check notice on line 59 in src/get-started/overview/iapp.md

View workflow job for this annotation

GitHub Actions / vale

[vale] src/get-started/overview/iapp.md#L59

[Google.Passive] In general, use active voice instead of passive voice ('is protected').
Raw output
{"message": "[Google.Passive] In general, use active voice instead of passive voice ('is protected').", "location": {"path": "src/get-started/overview/iapp.md", "range": {"start": {"line": 59, "column": 42}}}, "severity": "INFO"}
keeping data confidential and inaccessible to the host, cloud provider, or
operating system during execution.

</CardWithBorder>

## How it Works

Check warning on line 65 in src/get-started/overview/iapp.md

View workflow job for this annotation

GitHub Actions / vale

[vale] src/get-started/overview/iapp.md#L65

[Google.Headings] 'How it Works' should use sentence-style capitalization.
Raw output
{"message": "[Google.Headings] 'How it Works' should use sentence-style capitalization.", "location": {"path": "src/get-started/overview/iapp.md", "range": {"start": {"line": 65, "column": 4}}}, "severity": "WARNING"}

Your code runs in a Trusted Execution Environment (TEE). This secure area exists
inside specific processors (Intel Software Guard Extensions (SGX) or Trust

Check failure on line 68 in src/get-started/overview/iapp.md

View workflow job for this annotation

GitHub Actions / vale

[vale] src/get-started/overview/iapp.md#L68

[Vale.Terms] Use 'intel' instead of 'Intel'.
Raw output
{"message": "[Vale.Terms] Use 'intel' instead of 'Intel'.", "location": {"path": "src/get-started/overview/iapp.md", "range": {"start": {"line": 68, "column": 29}}}, "severity": "ERROR"}
Domain Extensions (TDX) chipsets). Everything stays private and protected there,

Check failure on line 69 in src/get-started/overview/iapp.md

View workflow job for this annotation

GitHub Actions / vale

[vale] src/get-started/overview/iapp.md#L69

[Vale.Spelling] Did you really mean 'chipsets'?
Raw output
{"message": "[Vale.Spelling] Did you really mean 'chipsets'?", "location": {"path": "src/get-started/overview/iapp.md", "range": {"start": {"line": 69, "column": 25}}}, "severity": "ERROR"}
even from the operating system.

Authorized users trigger an iApp that processes protected data inside this
private environment. Your iApp uses the data but never exposes it, not even to
you.

<CardWithBorder>

1. User provides private data
2. Data is protected with DataProtector

Check notice on line 79 in src/get-started/overview/iapp.md

View workflow job for this annotation

GitHub Actions / vale

[vale] src/get-started/overview/iapp.md#L79

[Google.Passive] In general, use active voice instead of passive voice ('is protected').
Raw output
{"message": "[Google.Passive] In general, use active voice instead of passive voice ('is protected').", "location": {"path": "src/get-started/overview/iapp.md", "range": {"start": {"line": 79, "column": 9}}}, "severity": "INFO"}
3. You build and deploy a confidential iApp that processes protected data
4. Run the iApp with the corresponding protected data, performing confidential
computing

</CardWithBorder>

Your iApp can send emails, update contracts, make transactions, trigger
notifications - anything your code needs. This isn't about trust. We provide

Check warning on line 87 in src/get-started/overview/iapp.md

View workflow job for this annotation

GitHub Actions / vale

[vale] src/get-started/overview/iapp.md#L87

[Google.We] Try to avoid using first-person plural like 'We'.
Raw output
{"message": "[Google.We] Try to avoid using first-person plural like 'We'.", "location": {"path": "src/get-started/overview/iapp.md", "range": {"start": {"line": 87, "column": 67}}}, "severity": "WARNING"}
**cryptographic and hardware-enforced guarantees** that preserve privacy within
the TEE execution environment.

## Use Cases

Check warning on line 91 in src/get-started/overview/iapp.md

View workflow job for this annotation

GitHub Actions / vale

[vale] src/get-started/overview/iapp.md#L91

[Google.Headings] 'Use Cases' should use sentence-style capitalization.
Raw output
{"message": "[Google.Headings] 'Use Cases' should use sentence-style capitalization.", "location": {"path": "src/get-started/overview/iapp.md", "range": {"start": {"line": 91, "column": 4}}}, "severity": "WARNING"}

<CardGrid>
<CardWithoutBorder>

### Healthcare

Process medical data for AI diagnosis without exposing patient information

</CardWithoutBorder>

<CardWithoutBorder>

### Finance

Analyze financial data for credit scoring while maintaining privacy

</CardWithoutBorder>

<CardWithoutBorder>

### Media

Content recommendation engines that don't track user behavior

</CardWithoutBorder>

<CardWithoutBorder>

### Research

Collaborative research on sensitive datasets across institutions

</CardWithoutBorder>

</CardGrid>

## Getting Started

Check warning on line 128 in src/get-started/overview/iapp.md

View workflow job for this annotation

GitHub Actions / vale

[vale] src/get-started/overview/iapp.md#L128

[Google.Headings] 'Getting Started' should use sentence-style capitalization.
Raw output
{"message": "[Google.Headings] 'Getting Started' should use sentence-style capitalization.", "location": {"path": "src/get-started/overview/iapp.md", "range": {"start": {"line": 128, "column": 4}}}, "severity": "WARNING"}

<Banner>

## Time to build

Let's build an iApp that can process protected data in a secure environment

Check warning on line 134 in src/get-started/overview/iapp.md

View workflow job for this annotation

GitHub Actions / vale

[vale] src/get-started/overview/iapp.md#L134

[Google.We] Try to avoid using first-person plural like 'Let's'.
Raw output
{"message": "[Google.We] Try to avoid using first-person plural like 'Let's'.", "location": {"path": "src/get-started/overview/iapp.md", "range": {"start": {"line": 134, "column": 1}}}, "severity": "WARNING"}
using the [iExec iApp generator tool](/references/iapp-generator). This tool

Check warning on line 135 in src/get-started/overview/iapp.md

View workflow job for this annotation

GitHub Actions / vale

[vale] src/get-started/overview/iapp.md#L135

[Google.OxfordComma] Use the Oxford comma in 'This tool helps you create, test and'.
Raw output
{"message": "[Google.OxfordComma] Use the Oxford comma in 'This tool helps you create, test and'.", "location": {"path": "src/get-started/overview/iapp.md", "range": {"start": {"line": 135, "column": 68}}}, "severity": "WARNING"}
helps you create, test and deploy iApps with just a few commands.

Check failure on line 136 in src/get-started/overview/iapp.md

View workflow job for this annotation

GitHub Actions / vale

[vale] src/get-started/overview/iapp.md#L136

[Vale.Spelling] Did you really mean 'iApps'?
Raw output
{"message": "[Vale.Spelling] Did you really mean 'iApps'?", "location": {"path": "src/get-started/overview/iapp.md", "range": {"start": {"line": 136, "column": 35}}}, "severity": "ERROR"}

</Banner>

### Quick Start Path

Check warning on line 140 in src/get-started/overview/iapp.md

View workflow job for this annotation

GitHub Actions / vale

[vale] src/get-started/overview/iapp.md#L140

[Google.Headings] 'Quick Start Path' should use sentence-style capitalization.
Raw output
{"message": "[Google.Headings] 'Quick Start Path' should use sentence-style capitalization.", "location": {"path": "src/get-started/overview/iapp.md", "range": {"start": {"line": 140, "column": 5}}}, "severity": "WARNING"}

1. **Protect your data** with [DataProtector](/references/dataProtector)
2. **Build your iApp** using the [iApp Generator](/references/iapp-generator)
3. **Deploy and test** your application

Check warning on line 144 in src/get-started/overview/iapp.md

View workflow job for this annotation

GitHub Actions / vale

[vale] src/get-started/overview/iapp.md#L144

[Google.WordList] Use 'app' instead of 'application'.
Raw output
{"message": "[Google.WordList] Use 'app' instead of 'application'.", "location": {"path": "src/get-started/overview/iapp.md", "range": {"start": {"line": 144, "column": 29}}}, "severity": "WARNING"}
4. **Process protected data** securely

### What You'll Learn

Check warning on line 147 in src/get-started/overview/iapp.md

View workflow job for this annotation

GitHub Actions / vale

[vale] src/get-started/overview/iapp.md#L147

[Google.Headings] 'What You'll Learn' should use sentence-style capitalization.
Raw output
{"message": "[Google.Headings] 'What You'll Learn' should use sentence-style capitalization.", "location": {"path": "src/get-started/overview/iapp.md", "range": {"start": {"line": 147, "column": 5}}}, "severity": "WARNING"}

- How to create a Docker container for your application

Check warning on line 149 in src/get-started/overview/iapp.md

View workflow job for this annotation

GitHub Actions / vale

[vale] src/get-started/overview/iapp.md#L149

[Google.WordList] Use 'app' instead of 'application'.
Raw output
{"message": "[Google.WordList] Use 'app' instead of 'application'.", "location": {"path": "src/get-started/overview/iapp.md", "range": {"start": {"line": 149, "column": 45}}}, "severity": "WARNING"}
- How to handle inputs and outputs securely
- How to deploy to the iExec network
- How to process protected data in TEE environments

::: tip

These are just a few examples, the possibilities are endless. Want to explore
iApp Generator? Check out our [documentation](/references/iapp-generator) and

Check warning on line 157 in src/get-started/overview/iapp.md

View workflow job for this annotation

GitHub Actions / vale

[vale] src/get-started/overview/iapp.md#L157

[Google.We] Try to avoid using first-person plural like 'our'.
Raw output
{"message": "[Google.We] Try to avoid using first-person plural like 'our'.", "location": {"path": "src/get-started/overview/iapp.md", "range": {"start": {"line": 157, "column": 27}}}, "severity": "WARNING"}
see what you can build!

Check failure on line 158 in src/get-started/overview/iapp.md

View workflow job for this annotation

GitHub Actions / vale

[vale] src/get-started/overview/iapp.md#L158

[Google.Exclamation] Don't use exclamation points in text.
Raw output
{"message": "[Google.Exclamation] Don't use exclamation points in text.", "location": {"path": "src/get-started/overview/iapp.md", "range": {"start": {"line": 158, "column": 18}}}, "severity": "ERROR"}

:::

## Technical Requirements

Check warning on line 162 in src/get-started/overview/iapp.md

View workflow job for this annotation

GitHub Actions / vale

[vale] src/get-started/overview/iapp.md#L162

[Google.Headings] 'Technical Requirements' should use sentence-style capitalization.
Raw output
{"message": "[Google.Headings] 'Technical Requirements' should use sentence-style capitalization.", "location": {"path": "src/get-started/overview/iapp.md", "range": {"start": {"line": 162, "column": 4}}}, "severity": "WARNING"}

- **Docker**: Your application must be containerized

Check warning on line 164 in src/get-started/overview/iapp.md

View workflow job for this annotation

GitHub Actions / vale

[vale] src/get-started/overview/iapp.md#L164

[Google.WordList] Use 'app' instead of 'application'.
Raw output
{"message": "[Google.WordList] Use 'app' instead of 'application'.", "location": {"path": "src/get-started/overview/iapp.md", "range": {"start": {"line": 164, "column": 20}}}, "severity": "WARNING"}

Check notice on line 164 in src/get-started/overview/iapp.md

View workflow job for this annotation

GitHub Actions / vale

[vale] src/get-started/overview/iapp.md#L164

[Google.Passive] In general, use active voice instead of passive voice ('be containerized').
Raw output
{"message": "[Google.Passive] In general, use active voice instead of passive voice ('be containerized').", "location": {"path": "src/get-started/overview/iapp.md", "range": {"start": {"line": 164, "column": 37}}}, "severity": "INFO"}
- **Input/Output**: Define clear input and output schemas
- **TEE Compatibility**: Ensure your code runs in secure enclaves
- **Network Access**: Configure any external API calls or dependencies

## Next Steps

Check warning on line 169 in src/get-started/overview/iapp.md

View workflow job for this annotation

GitHub Actions / vale

[vale] src/get-started/overview/iapp.md#L169

[Google.Headings] 'Next Steps' should use sentence-style capitalization.
Raw output
{"message": "[Google.Headings] 'Next Steps' should use sentence-style capitalization.", "location": {"path": "src/get-started/overview/iapp.md", "range": {"start": {"line": 169, "column": 4}}}, "severity": "WARNING"}

Ready to build your first privacy-preserving application? Start with our

Check warning on line 171 in src/get-started/overview/iapp.md

View workflow job for this annotation

GitHub Actions / vale

[vale] src/get-started/overview/iapp.md#L171

[Google.WordList] Use 'app' instead of 'application'.
Raw output
{"message": "[Google.WordList] Use 'app' instead of 'application'.", "location": {"path": "src/get-started/overview/iapp.md", "range": {"start": {"line": 171, "column": 46}}}, "severity": "WARNING"}

Check warning on line 171 in src/get-started/overview/iapp.md

View workflow job for this annotation

GitHub Actions / vale

[vale] src/get-started/overview/iapp.md#L171

[Google.We] Try to avoid using first-person plural like 'our'.
Raw output
{"message": "[Google.We] Try to avoid using first-person plural like 'our'.", "location": {"path": "src/get-started/overview/iapp.md", "range": {"start": {"line": 171, "column": 70}}}, "severity": "WARNING"}
[Hello World tutorial](/get-started/helloWorld) or dive into the
[iApp Generator documentation](/references/iapp-generator).

For more technical details, see the
[DataProtector Sharing](/references/dataProtector/dataProtectorSharing)
documentation.
4 changes: 2 additions & 2 deletions src/get-started/overview/rlc.md
Original file line number Diff line number Diff line change
Expand Up @@ -68,9 +68,9 @@

### 📊 Ecosystem Growth Metrics

::: info
::: info Circulating Supply

Circulating Supply The entire circulating supply of RLC has already been minted.
The entire circulating supply of RLC has already been minted.

Check notice on line 73 in src/get-started/overview/rlc.md

View workflow job for this annotation

GitHub Actions / vale

[vale] src/get-started/overview/rlc.md#L73

[Google.Passive] In general, use active voice instead of passive voice ('been minted').
Raw output
{"message": "[Google.Passive] In general, use active voice instead of passive voice ('been minted').", "location": {"path": "src/get-started/overview/rlc.md", "range": {"start": {"line": 73, "column": 50}}}, "severity": "INFO"}
There are no pending token unlocks or private allocations that could impact the
market. Since launch, iExec has been self-funded, without relying on VCs.

Expand Down
Loading