diff --git a/.gitbook/assets/gsn-favicon.png b/.gitbook/assets/gsn-favicon.png new file mode 100644 index 0000000..3eb8e28 Binary files /dev/null and b/.gitbook/assets/gsn-favicon.png differ diff --git a/README.md b/README.md index db6ccb2..977c830 100644 --- a/README.md +++ b/README.md @@ -9,10 +9,10 @@ decentralized system that improves dapp usability without sacrificing security. Example use cases for GSN: -1. *Pay gas in any token*: Allow users to pay for gas in any token -1. *Pay gas in fiat*: Allow users to pay for gas in fiat without having to go through KYC -1. *Privacy*: Enabling ETH-less withdrawal of tokens sent to stealth addresses -1. *Onboarding*: Allow dapps to subsidize the onboarding process for new users +1. **Pay gas in any token**: Allow users to pay for gas in any token +2. **Pay gas in fiat**: Allow users to pay for gas in fiat without having to go through KYC +3. **Privacy**: Enabling ETH-less withdrawal of tokens sent to stealth addresses +4. **Onboarding**: Allow dapps to subsidize the onboarding process for new users ## The problem @@ -34,12 +34,13 @@ of dollars in their wallet. *Components*: -* [*Client*: signs & sends meta transaction to relay server](#client) -* [*Relay servers*: one for all and all for one](#relayservers) -* [*Paymaster*: agrees to refund relay server for gas fees](#paymaster) -* [*Trusted Forwarder*: verifies sender signature and nonce](#forwarder) -* [*Recipient contract*: sees original sender](#recipient) -* [*RelayHub*: connecting participants trustlessly](#relayhub) +* [**Client**: signs & sends meta transaction to relay server](#client) +* [**Relay servers**: one for all and all for one](#relayservers) +* [**Paymaster**: agrees to refund relay server for gas fees](#paymaster) +* [**Trusted Forwarder**: verifies sender signature and nonce](#forwarder) +* [**Recipient contract**: sees original sender](#recipient) +* [**RelayHub**: connecting participants trustlessly](#relayhub) + ### Client: signs & sends meta transaction to relay server A meta-transaction is a fancy name for a simple idea: a relay server can send a @@ -48,6 +49,7 @@ Ethereum transaction, which would require ETH for gas, a user signs a message containing information about a transaction they would like to execute and sends it to a relay server. Before the relay server pays for gas it verifies it will get refunded by a Paymaster contract. + ### Relay servers: one for all, all for one The best practice is for every dapp to deploy their own relay servers that will @@ -61,6 +63,7 @@ are willing to serve it in exchange for an extra fee. This creates a "one for all and all for one" effect where taking down the frontend of any dapp is as hard as taking down the entire network. The more dapps participate the more robust the availability guarantee. + ### Paymaster: agrees to refund relay server for gas fees In the GSN, all access control and gas refund logic is implemented inside diff --git a/SUMMARY.md b/SUMMARY.md index 8ed98a8..450c7ad 100644 --- a/SUMMARY.md +++ b/SUMMARY.md @@ -7,7 +7,6 @@ * [Getting Started](javascript-client/getting-started.md) * [Preparing the environment](javascript-client/devops.md) * [Advanced configuration](javascript-client/advanced.md) -* [API Reference](javascript-client/api.md) * [GSN Frequently Asked Questions](javascript-client/gsn-faq.md) * [GSN Helpers](javascript-client/gsn-helpers.md) * [Interacting with RelayHub](javascript-client/interacting-with-relayhub.md)