Skip to content

Commit a461648

Browse files
committed
Getting started iapp
content of getting start to use iapp
1 parent d4eb78f commit a461648

File tree

5 files changed

+338
-105
lines changed

5 files changed

+338
-105
lines changed

.vitepress/sidebar.ts

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -429,13 +429,9 @@ export function getSidebar() {
429429
{
430430
text: 'USE AN iAPP',
431431
items: [
432-
{
433-
text: '📝  Introduction',
434-
link: '/use_iapp/introduction',
435-
},
436432
{
437433
text: '🚀  Getting Started',
438-
link: '/use_iapp/getting-started',
434+
link: '/use_iapp/introduction',
439435
},
440436
{
441437
text: '📖  Guides',

build_iapp/iapp-generator/what-is-iapp.md

Lines changed: 80 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -5,31 +5,39 @@ description: Privacy-first applications that run on decentralized infrastructure
55

66
# 🚀 What Is an iApp?
77

8-
**Think about code, but it runs in a privacy-safe environment.** An iApp is just your regular application code (Python script, AI model, data processor) packaged to run inside secure enclaves.
8+
**Think about code, but it runs in a privacy-safe environment.** An iApp is just
9+
your regular application code (Python script, AI model, data processor) packaged
10+
to run inside secure enclaves.
911

1012
## Why Would You Want This?
1113

1214
Simple: **to process sensitive data that users won't normally share.**
1315

1416
Imagine you want to build:
17+
1518
- An AI that analyzes personal health data
16-
- An email tool that needs access to contact lists
19+
- An email tool that needs access to contact lists
1720
- A financial advisor that processes bank statements
1821
- A content filter that reads private messages
1922

20-
Users have this data, but they won't give it to your regular app. **With iApps, they will.**
23+
Users have this data, but they won't give it to your regular app. **With iApps,
24+
they will.**
2125

2226
## How It Works
2327

24-
Your code runs in a **trusted execution environment** (TEE) - think of it as a "privacy bubble" that even iExec workers can't peek into.
28+
Your code runs in a **trusted execution environment** (TEE) - think of it as a
29+
"privacy bubble" that even iExec workers can't peek into.
2530

26-
Users run your iApp when they want to **use** their Protected Data for something. Your code gets access to their protected data, performs actions with it - all without you ever seeing the raw data.
31+
Users run your iApp when they want to **use** their Protected Data for
32+
something. Your code gets access to their protected data, performs actions with
33+
it - all without you ever seeing the raw data.
2734

2835
## iApp Generator: Your Development Tool
2936

3037
Creating iApps used to be complex. **iApp Generator** simplifies this by:
3138

32-
- **Simulating TEE environment locally** - Test your code in conditions close to real execution
39+
- **Simulating TEE environment locally** - Test your code in conditions close to
40+
real execution
3341
- **Handling deployment** - Package and deploy with simple commands
3442
- **Managing dependencies** - Docker containers, environment setup, etc.
3543

@@ -44,11 +52,13 @@ iapp test
4452
iapp deploy
4553
```
4654

47-
*Note: iApp Generator currently supports Python and Node.js, but iApps can be built in any language that runs in Docker.*
55+
_Note: iApp Generator currently supports Python and Node.js, but iApps can be
56+
built in any language that runs in Docker._
4857

4958
## Real Examples
5059

5160
**Email Notification iApp**
61+
5262
```python
5363
# User runs: "Send updates to my contacts about my project"
5464
contacts = load_protecteddata() # User's protected contact list
@@ -57,7 +67,8 @@ for contact in contacts:
5767
# → Emails sent directly, you never see the addresses
5868
```
5969

60-
**Oracle Update iApp**
70+
**Oracle Update iApp**
71+
6172
```python
6273
# User runs: "Update price oracle with my private trading data"
6374
trading_data = load_protecteddata() # User's protected trading history
@@ -67,6 +78,7 @@ update_oracle_contract(average_price)
6778
```
6879

6980
**Automated Transactions iApp**
81+
7082
```python
7183
# User runs: "Buy tokens when my portfolio meets certain conditions"
7284
portfolio = load_protecteddata() # User's protected portfolio data
@@ -80,12 +92,14 @@ if should_buy_tokens(portfolio):
8092
Here's why users will actually use your iApp with their private data:
8193

8294
### What Users See
95+
8396
- ✅ "This code runs in a secure enclave, not on the developer's servers"
84-
- ✅ "My data gets used privately for actions I want"
97+
- ✅ "My data gets used privately for actions I want"
8598
- ✅ "Even iExec workers can't see my data during execution"
8699
- ✅ "I can revoke access anytime"
87100

88-
### What You Get
101+
### What You Get
102+
89103
- ✅ Users willing to use your services with their sensitive data
90104
- ✅ New business models around privacy-preserving analytics
91105
- ✅ Competitive advantage through privacy guarantees
@@ -98,78 +112,105 @@ User's Private Data → Encrypted → TEE Environment → Your iApp uses it →
98112

99113
**Nobody sees the raw data except your code running inside the secure enclave.**
100114

101-
Your iApp can send emails, update contracts, make transactions, trigger notifications - anything your code needs to do with the protected data. This isn't about trust - it's about **mathematical guarantees** that privacy is preserved.
115+
Your iApp can send emails, update contracts, make transactions, trigger
116+
notifications - anything your code needs to do with the protected data. This
117+
isn't about trust - it's about **mathematical guarantees** that privacy is
118+
preserved.
102119

103120
## What This Enables
104121

105122
### 📧 **Private Communication**
106-
Users send emails, notifications, or messages using their protected contact lists without exposing recipient information.
107123

108-
### 🔮 **Trustworthy Oracles**
109-
Users contribute real data to oracles while keeping their private information confidential.
124+
Users send emails, notifications, or messages using their protected contact
125+
lists without exposing recipient information.
126+
127+
### 🔮 **Trustworthy Oracles**
128+
129+
Users contribute real data to oracles while keeping their private information
130+
confidential.
110131

111132
### 🤖 **Personal AI Assistants**
112-
Users let AI models perform actions based on their private data - trading, scheduling, recommendations.
133+
134+
Users let AI models perform actions based on their private data - trading,
135+
scheduling, recommendations.
113136

114137
### **Automated Actions**
115-
Users set up automated workflows that use their private data to trigger actions, transactions, or updates.
138+
139+
Users set up automated workflows that use their private data to trigger actions,
140+
transactions, or updates.
116141

117142
## ❓ Frequently Asked Questions
118143

144+
::: details 📦 What can I build with iApps? Anything that runs in Docker! AI
145+
models, data processing scripts, web scrapers, image processing, financial
146+
calculations, etc. If it runs in a container, it can be an iApp. :::
119147

120-
::: details 📦 What can I build with iApps?
121-
Anything that runs in Docker! AI models, data processing scripts, web scrapers, image processing, financial calculations, etc. If it runs in a container, it can be an iApp.
122-
:::
148+
::: details ⚡ How fast are iApps? Initial task scheduling takes ~30 seconds
149+
(depending on the resources the worker download, congestion etc), then your code
150+
runs at normal speed depending on complexity. :::
123151

124-
::: details ⚡ How fast are iApps?
125-
Initial task scheduling takes ~30 seconds (depending on the resources the worker download, congestion etc), then your code runs at normal speed depending on complexity.
126-
:::
152+
::: details 🛡️ Are iApps really secure? Yes! Code runs in Intel SGX or TDX
153+
secure enclaves. Even the worker running your iApp can't see what's happening
154+
inside the enclave. :::
127155

128-
::: details 🛡️ Are iApps really secure?
129-
Yes! Code runs in Intel SGX or TDX secure enclaves. Even the worker running your iApp can't see what's happening inside the enclave.
156+
::: details 🚀 How do I deploy my first iApp? Try our
157+
[Hello World](/overview/helloWorld) for a quick start, or check the
158+
[iApp Generator](/build_iapp/iapp-generator) section for detailed instructions.
130159
:::
131160

132-
::: details 🚀 How do I deploy my first iApp?
133-
Try our [Hello World](/overview/helloWorld) for a quick start, or check the [iApp Generator](/build_iapp/iapp-generator) section for detailed instructions.
134-
:::
135-
136-
::: details 🔧 What programming languages are supported?
137-
iApps can be built in any language that runs in Docker (Python, JavaScript, R, Java, Go, etc.). However, **iApp Generator** currently supports only Python and Node.js for simplified development.
138-
:::
161+
::: details 🔧 What programming languages are supported? iApps can be built in
162+
any language that runs in Docker (Python, JavaScript, R, Java, Go, etc.).
163+
However, **iApp Generator** currently supports only Python and Node.js for
164+
simplified development. :::
139165

140166
## Why This Changes Everything
141167

142168
### **True Privacy**
143-
Users never expose their raw data. Your app processes it privately inside secure enclaves.
169+
170+
Users never expose their raw data. Your app processes it privately inside secure
171+
enclaves.
144172

145173
### **Verifiable Execution**
146-
Cryptographic proof that your code ran exactly as intended. No black box execution.
174+
175+
Cryptographic proof that your code ran exactly as intended. No black box
176+
execution.
147177

148178
### **Decentralized Infrastructure**
149-
No single point of failure. Your app runs across a distributed network of workers.
179+
180+
No single point of failure. Your app runs across a distributed network of
181+
workers.
150182

151183
### **Zero Trust Architecture**
184+
152185
Users don't need to trust you with their data. The protocol guarantees privacy.
153186

154187
## Start Building
155188

156189
Ready to build privacy-first applications?
157190

158191
### 🚀 **Try iApp Generator**
159-
- [Getting Started](/build_iapp/iapp-generator/getting-started) - Deploy your first iApp in 15 minutes
160-
- [Building Your iExec App](/build_iapp/iapp-generator/building-your-iexec-app) - Complete development guide
192+
193+
- [Getting Started](/build_iapp/iapp-generator/getting-started) - Deploy your
194+
first iApp in 15 minutes
195+
- [Building Your iExec App](/build_iapp/iapp-generator/building-your-iexec-app) -
196+
Complete development guide
161197

162198
### 📖 **Learn with Guides**
199+
163200
- [Orders](/build_iapp/guides/orders) - How iApp execution works
164201
- [Inputs and Outputs](/build_iapp/guides/inputs-and-outputs) - Handle data flow
165-
- [Debugging Your iApp](/build_iapp/guides/debugging-your-iapp) - Troubleshoot issues
202+
- [Debugging Your iApp](/build_iapp/guides/debugging-your-iapp) - Troubleshoot
203+
issues
166204

167205
### 🎯 **See iApps in Action**
206+
168207
Real iApps you can use today:
208+
169209
- [Web3Mail](/use_iapp/web3mail) - Private emailing iApp SDK
170-
- [Web3Telegram](/use_iapp/web3telegram) Private messaging iApp SDK
210+
- [Web3Telegram](/use_iapp/web3telegram) Private messaging iApp SDK
171211
- [Oracle Factory](/use_iapp/oracle-factory) - Decentralized oracles
172212

173213
---
174214

175-
**TL;DR**: iApps = Your code + Secure execution + User privacy + Verifiable results. Cloud computing, but nobody can spy on your stuff. 🔒
215+
**TL;DR**: iApps = Your code + Secure execution + User privacy + Verifiable
216+
results. Cloud computing, but nobody can spy on your stuff. 🔒

0 commit comments

Comments
 (0)