Skip to content

Commit 93f4fe1

Browse files
authored
Merge branch 'master' into mpc-core-kit-swift
2 parents be9bacf + a9d9d8c commit 93f4fe1

File tree

257 files changed

+5794
-2509
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

257 files changed

+5794
-2509
lines changed

docs/auth-provider-setup/social-providers/twitter.mdx

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -11,24 +11,27 @@ import TabItem from "@theme/TabItem";
1111

1212
:::note
1313

14-
Twitter login can be performed in various ways, depending on the use case. We have demonstrated this with Auth0 & Firebase, but this can be done with
15-
any other Federated/JWT providers.
14+
Twitter login can be performed in various ways, depending on the use case. We have demonstrated this
15+
with Auth0 & Firebase, but this can be done with any other Federated/JWT providers.
1616

1717
:::
1818

1919
## Set up [Twitter via Auth0](https://auth0.com/blog/how-to-add-a-twitter-social-connection-in-auth0/#Setup-Twitter-connection)
2020

21-
1. Create an Auth0 verifier for your application by selecting `Auth0` as the Login provider from this modal.
21+
1. Create an Auth0 verifier for your application by selecting `Auth0` as the Login provider from
22+
this modal.
2223
![Twitter - Login Providers list on Web3Auth Dashboard](/images/dashboard/create-verifier-auth0.png)
2324
2. Select `Twitter` as the **Authentication Type** based on the dropdown.
2425
![Twitter - Auth0 Authentication Type list on Web3Auth Dashboard](/images/dashboard/create-verifier-google.png)
25-
3. Enter the `Auth0 Client ID` and `Auth0 Domain` from your Auth0 application. See how to create a new Auth0 application
26-
[here](https://auth0.com/docs/quickstart/webapp/).
26+
3. Enter the `Auth0 Client ID` and `Auth0 Domain` from your Auth0 application. See how to create a
27+
new Auth0 application [here](https://auth0.com/docs/quickstart/webapp/).
2728

2829
![Twitter - Domain and Client ID from Auth0 Dashboard](/images/dashboard/create-verifier-auth0-filled-common.png)
2930
![Twitter - Auth0 Client ID and Auth0 Domain on Web3Auth Dashboard](/images/dashboard/create-verifier-auth0-unfilled.png)
3031

31-
4. Add the [Twitter Social Connection](https://marketplace.auth0.com/integrations/twitter-social-connection) to your Auth0 application.
32+
4. Add the
33+
[Twitter Social Connection](https://marketplace.auth0.com/integrations/twitter-social-connection)
34+
to your Auth0 application.
3235
5. Click on the `Create` button to create `Twitter` Custom Authentication via Auth0 verifier.
3336

3437
### Example
@@ -38,7 +41,8 @@ import { Web3AuthNoModal } from "@web3auth/no-modal";
3841
import { OpenloginAdapter } from "@web3auth/openlogin-adapter";
3942
import { EthereumPrivateKeyProvider } from "@web3auth/ethereum-provider";
4043

41-
const clientId = "BPi5PB_UiIZ-cPz1GtV5i1I2iOSOHuimiXBI0e-Oe_u6X3oVAbCiAZOTEBtTXw4tsluTITPqA8zMsfxIKMjiqNQ";
44+
const clientId =
45+
"BPi5PB_UiIZ-cPz1GtV5i1I2iOSOHuimiXBI0e-Oe_u6X3oVAbCiAZOTEBtTXw4tsluTITPqA8zMsfxIKMjiqNQ";
4246
// get it from https://dashboard.web3auth.io by creating a project.
4347

4448
const chainConfig = {
@@ -214,7 +218,8 @@ import { ADAPTER_EVENTS, CHAIN_NAMESPACES, IProvider } from "@web3auth/base";
214218
import { EthereumPrivateKeyProvider } from "@web3auth/ethereum-provider";
215219
import { TwitterAuthProvider, getAuth, signInWithPopup, UserCredential } from "firebase/auth";
216220

217-
const clientId = "BPi5PB_UiIZ-cPz1GtV5i1I2iOSOHuimiXBI0e-Oe_u6X3oVAbCiAZOTEBtTXw4tsluTITPqA8zMsfxIKMjiqNQ"; // get from https://dashboard.web3auth.io
221+
const clientId =
222+
"BPi5PB_UiIZ-cPz1GtV5i1I2iOSOHuimiXBI0e-Oe_u6X3oVAbCiAZOTEBtTXw4tsluTITPqA8zMsfxIKMjiqNQ"; // get from https://dashboard.web3auth.io
218223

219224
const verifier = "w3a-firebase-demo";
220225

@@ -223,7 +228,7 @@ const chainConfig = {
223228
chainId: "0x1", // Please use 0x1 for Mainnet
224229
rpcTarget: "https://rpc.ankr.com/eth",
225230
displayName: "Ethereum Mainnet",
226-
blockExplorer: "https://etherscan.io/",
231+
blockExplorerUrl: "https://etherscan.io/",
227232
ticker: "ETH",
228233
tickerName: "Ethereum",
229234
};
@@ -283,7 +288,8 @@ import { EthereumPrivateKeyProvider } from "@web3auth/ethereum-provider";
283288
import { IProvider } from "@web3auth/base";
284289
import { TwitterAuthProvider, getAuth, signInWithPopup, UserCredential } from "firebase/auth";
285290

286-
const clientId = "BPi5PB_UiIZ-cPz1GtV5i1I2iOSOHuimiXBI0e-Oe_u6X3oVAbCiAZOTEBtTXw4tsluTITPqA8zMsfxIKMjiqNQ"; // get from https://dashboard.web3auth.io
291+
const clientId =
292+
"BPi5PB_UiIZ-cPz1GtV5i1I2iOSOHuimiXBI0e-Oe_u6X3oVAbCiAZOTEBtTXw4tsluTITPqA8zMsfxIKMjiqNQ"; // get from https://dashboard.web3auth.io
287293

288294
const verifier = "w3a-firebase-demo";
289295

docs/connect-blockchain/connect-blockchain.mdx

Lines changed: 77 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -9,40 +9,46 @@ image: "images/docs-meta-cards/documentation-card.png"
99
import EVMChains from "@site/src/common/docs/_evm-chains.mdx";
1010
import OtherChains from "@site/src/common/docs/_other-chains.mdx";
1111

12-
Web3Auth is the frontend authentication system for your dApp. Once the user is authenticated, the Web3Auth SDK returns a provider. A provider is how
13-
libraries like web3.js & ethers.js talk to the blockchain. Providers take JSON-RPC requests and return the response. This is normally done by
14-
submitting the request to an HTTP or IPC socket-based server. With Web3Auth, you get two types of providers, depending on the product you use:
12+
Web3Auth is the frontend authentication system for your dApp. Once the user is authenticated, the
13+
Web3Auth SDK returns a provider. A provider is how libraries like web3.js & ethers.js talk to the
14+
blockchain. Providers take JSON-RPC requests and return the response. This is normally done by
15+
submitting the request to an HTTP or IPC socket-based server. With Web3Auth, you get two types of
16+
providers, depending on the product you use:
1517

1618
1. [Shamir Secret Sharing based Private Key Providers](#private-key-providers-non-mpc)
1719
2. [Threshold Signature Scheme based MPC Providers](#mpc-providers)
1820

1921
## Web3Auth is Chain Agnostic
2022

21-
By default, Web3Auth supports the `secp256k1` and `ed25519` key curves. While these key curves serve the majority of blockchains out there, certain
22-
blockchains have different curve implementations of their own. While for our MPC products, you need dedicated providers to interact with certain
23+
By default, Web3Auth supports the `secp256k1` and `ed25519` key curves. While these key curves serve
24+
the majority of blockchains out there, certain blockchains have different curve implementations of
25+
their own. While for our MPC products, you need dedicated providers to interact with certain
2326
blockchains, with **Web3Auth non-MPC products you can interact with any blockchain of your choice**.
2427

25-
In Web3Auth non-MPC Products, the ability to export the user's private key comes in handy. This private key can be utilized by the dApp to interact
26-
with the chain.
28+
In Web3Auth non-MPC Products, the ability to export the user's private key comes in handy. This
29+
private key can be utilized by the dApp to interact with the chain.
2730

2831
You can read more about this in our [Connect with Other Blockchains](./other/) section.
2932

3033
:::info
3134

32-
Web3Auth is composable - you can combine it with meta-transaction flows, multisigs, and other cryptographic protocols. It is easy to build on top of,
33-
and generally fits in with most other technology stacks, including but not limited to; your favorite scalability solutions, meta transactions, smart
34-
contract wallets, different elliptic curve pairs and even RSA.
35+
Web3Auth is composable - you can combine it with meta-transaction flows, multisigs, and other
36+
cryptographic protocols. It is easy to build on top of, and generally fits in with most other
37+
technology stacks, including but not limited to; your favorite scalability solutions, meta
38+
transactions, smart contract wallets, different elliptic curve pairs and even RSA.
3539

3640
:::
3741

3842
## Private Key Providers (non-MPC)
3943

40-
The Private Key Providers work with the majority of Web3Auth products, including Plug and Play SDKs, Single Factor Auth SDKs, and tKey SSS (v1) SDKs.
41-
As the name suggests these providers are a wrapper around the user's private key, which is dynamically reconstructed with Shamir's Secret Sharing and
44+
The Private Key Providers work with the majority of Web3Auth products, including Plug and Play SDKs,
45+
Single Factor Auth SDKs, and tKey SSS (v1) SDKs. As the name suggests these providers are a wrapper
46+
around the user's private key, which is dynamically reconstructed with Shamir's Secret Sharing and
4247
is present in the user's frontend.
4348

44-
Once the authentication happens, the returned result from the Web3Auth network is taken up by the provider to give a common interface to interact with
45-
the blockchain of your choice. Currently, Web3Auth supports the following private key providers for Web SDKs:
49+
Once the authentication happens, the returned result from the Web3Auth network is taken up by the
50+
provider to give a common interface to interact with the blockchain of your choice. Currently,
51+
Web3Auth supports the following private key providers for Web SDKs:
4652

4753
- [EIP1193 Private Key Provider](/sdk/providers/evm): For connecting to EVM based chains
4854
- [Solana Private Key Provider](/sdk/providers/solana): For connecting with Solana Blockchain
@@ -51,18 +57,19 @@ the blockchain of your choice. Currently, Web3Auth supports the following privat
5157

5258
## MPC Providers
5359

54-
The Threshold Signature Scheme-based MPC Providers work with our MPC Core Kit SDK. These providers generate a signature of the particular key curve
55-
the provider is configured for and accordingly gives you the interface to initialize with the blockchain it is configured for. Currently, Web3Auth MPC
56-
Core Kit supports the following providers:
60+
The Threshold Signature Scheme-based MPC Providers work with our MPC Core Kit SDK. These providers
61+
generate a signature of the particular key curve the provider is configured for and accordingly
62+
gives you the interface to initialize with the blockchain it is configured for. Currently, Web3Auth
63+
MPC Core Kit supports the following providers:
5764

5865
- EIP1193 MPC Provider: For connecting with EVM-based chains [Available by default within the SDK]
5966
- Bitcoin MPC Provider (coming soon)
6067
- Solana MPC Provider (coming soon)
6168

6269
## Reference Guides for Blockchain Connections
6370

64-
You can check out the following guides we've written for certain blockchains. We have covered a wide variety of EVM and EVM Chains, supported by
65-
multiple web3auth providers.
71+
You can check out the following guides we've written for certain blockchains. We have covered a wide
72+
variety of EVM and EVM Chains, supported by multiple web3auth providers.
6673

6774
### EVM Chain Guides
6875

@@ -73,28 +80,67 @@ multiple web3auth providers.
7380

7481
## Adding JSON RPC APIs
7582

76-
Web3Auth providers give you a standard way of interacting with the blockchain. However, alongside that, it is recommended to use JSON RPC APIs, which
77-
help you connect to the blockchain without the need to run your own instance/ nodes. There are many services which offer a web API for accessing
83+
Web3Auth providers give you a standard way of interacting with the blockchain. However, alongside
84+
that, it is recommended to use JSON RPC APIs, which help you connect to the blockchain without the
85+
need to run your own instance/ nodes. There are many services which offer a web API for accessing
7886
different blockchains:
7987

8088
#### Infura
8189

82-
[Infura](https://infura.io) is the leading platform for Ethereum infrastructure. It provides a gateway to the Ethereum network, allowing developers to
83-
build and scale decentralized applications without having to run their own infrastructure. Most of the Web3Auth backend infrastructure runs on Infura
84-
APIs.
90+
[Infura](https://infura.io) is the leading platform for Ethereum infrastructure. It provides a
91+
gateway to the Ethereum network, allowing developers to build and scale decentralized applications
92+
without having to run their own infrastructure. Most of the Web3Auth backend infrastructure runs on
93+
Infura APIs.
8594

8695
#### Quicknode
8796

88-
[Quicknode](https://www.quicknode.com/) is a managed blockchain node service that provides high-performance access to 15+ blockchains, including
89-
Ethereum, Gnosis (xDAI), Polygon, Binance Smart Chain, Avalanche, Fantom, Solana, Optimism, Arbitrum (+Nova), Algorand, Harmony, Celo, Terra and
90-
Bitcoin networks. They're the biggest node providers for the Solana Ecosystem, and our major partners for Solana infrastructure.
97+
[Quicknode](https://www.quicknode.com/) is a managed blockchain node service that provides
98+
high-performance access to 15+ blockchains, including Ethereum, Gnosis (xDAI), Polygon, Binance
99+
100+
Smart Chain, Avalanche, Fantom, Solana, Optimism, Arbitrum (+Nova), Algorand, Harmony, Celo, Neon,
101+
Terra and Bitcoin networks. They're the biggest node providers for the Solana Ecosystem, and our
102+
major partners for Solana infrastructure.
91103

92104
#### Alchemy
93105

94-
As a developer platform, [Alchemy](https://www.alchemy.com/) provides a suite of developer toolings and abstractions including JSON RPC APIs across
95-
all major chains, an ethers.js SDK, and a library of [enhanced APIs](https://docs.alchemy.com/reference/enhanced-apis-overview) like their NFT APIs.
106+
As a developer platform, [Alchemy](https://www.alchemy.com/) provides a suite of developer toolings
107+
and abstractions including JSON RPC APIs across all major chains, an ethers.js SDK, and a library of
108+
[enhanced APIs](https://docs.alchemy.com/reference/enhanced-apis-overview) like their NFT APIs.
96109

97110
#### Ankr
98111

99-
[Ankr](https://www.ankr.com/) is a decentralized cloud computing platform that provides a full suite of infrastructure services for blockchain
100-
developers. Most of the examples in our documentation use Ankr's Public JSON RPC APIs, to help you kickstart.
112+
[Ankr](https://www.ankr.com/) is a decentralized cloud computing platform that provides a full suite
113+
of infrastructure services for blockchain developers. Most of the examples in our documentation use
114+
Ankr's Public JSON RPC APIs, to help you kickstart.
115+
116+
## Faucets for Different Blockchains
117+
118+
Faucets are services that provide users with a small amount of cryptocurrency for free. These are
119+
often used for testing purposes or to onboard new users to a blockchain network. Here are some
120+
popular faucet services for different test blockchains:
121+
122+
- Amoy Polygon faucet
123+
- https://faucet.polygon.technology/
124+
- https://www.alchemy.com/faucets/polygon-amoy
125+
- https://faucet.quicknode.com/polygon/amoy
126+
- Avalanche
127+
- https://faucet.avax.network/
128+
- Base Sepolia Faucet
129+
- https://www.alchemy.com/faucets/base-sepolia
130+
- Binance Smart Chain Faucet
131+
- https://www.bnbchain.org/en/testnet-faucet
132+
- Cosmos
133+
- https://stakely.io/en/faucet/cosmos-atom
134+
- Optimism
135+
- https://app.optimism.io/faucet
136+
- Polkadot Rococo / Westend / Paseo
137+
- https://faucet.polkadot.io/
138+
- Sepolia Ethereum Faucet
139+
- https://www.infura.io/faucet/sepolia
140+
- https://www.alchemy.com/faucets/ethereum-sepolia
141+
- (Sepolia PoW Faucet)[https://sepolia-faucet.pk910.de/]
142+
- https://faucet.quicknode.com/ethereum/sepolia
143+
- https://faucets.chain.link/
144+
- Solana
145+
- https://faucet.solana.com/
146+

docs/connect-blockchain/evm/ethereum/web.mdx

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,8 @@ sidebar_label: Web
44
image: "guides/banners/ethereum.png"
55
displayed_sidebar: resources
66
keywords: [ethereum, web3auth, authentication, blockchain]
7-
description: "Integrate Web3Auth with the Ethereum Blockchain in JavaScript | Documentation - Web3Auth"
7+
description:
8+
"Integrate Web3Auth with the Ethereum Blockchain in JavaScript | Documentation - Web3Auth"
89
---
910

1011
import InstallationSnippet from "@site/src/common/docs/web-connect-blockchain/_evm-installation.mdx";
@@ -33,11 +34,14 @@ import SEO from "@site/src/components/SEO";
3334
slug="/connect-blockchain/evm/ethereum/web"
3435
/>
3536

36-
While using the Web3Auth Web SDK, you get a [`EIP1193`](https://eips.ethereum.org/EIPS/eip-1193) provider, similar to the
37-
[Metamask Provider](https://docs.metamask.io/guide/ethereum-provider.html). This provider can be used with libraries like
38-
[`web3.js`](https://web3js.readthedocs.io/en/v1.2.8/getting-started.html), [`ethers.js`](https://docs.ethers.io/v5/getting-started/) etc. to make
39-
[Ethereum](https://ethereum.org/) blockchain calls like getting the user's `account`, fetching `balance`, `sign transaction`, `send transaction`,
40-
`read` from and `write` to the smart contract, etc. We have highlighted a few here to get you started quickly on that.
37+
While using the Web3Auth Web SDK, you get a [`EIP1193`](https://eips.ethereum.org/EIPS/eip-1193)
38+
provider, similar to the [Metamask Provider](https://docs.metamask.io/guide/ethereum-provider.html).
39+
This provider can be used with libraries like
40+
[`web3.js`](https://web3js.readthedocs.io/en/v1.2.8/getting-started.html),
41+
[`ethers.js`](https://docs.ethers.io/v5/getting-started/), [`viem`](https://viem.sh/) etc. to make
42+
[Ethereum](https://ethereum.org/) blockchain calls like getting the user's `account`, fetching
43+
`balance`, `sign transaction`, `send transaction`, `read` from and `write` to the smart contract,
44+
etc. We have highlighted a few here to get you started quickly on that.
4145

4246
## Installation
4347

@@ -47,8 +51,9 @@ To interact with the Ethereum blockchain, you can use either library with Web3Au
4751

4852
## Initializing Provider
4953

50-
Using `eip155` as `chainNamespace` while initializing `web3auth` will provide an [`EIP1193`](https://eips.ethereum.org/EIPS/eip-1193) compatible
51-
provider as **`web3auth.provider`** after successful authentication.
54+
Using `eip155` as `chainNamespace` while initializing `web3auth` will provide an
55+
[`EIP1193`](https://eips.ethereum.org/EIPS/eip-1193) compatible provider as **`web3auth.provider`**
56+
after successful authentication.
5257

5358
### Getting the `chainConfig`
5459

Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,98 @@
1+
---
2+
title: Integrate Web3Auth with the Neon Blockchain in Android
3+
sidebar_label: Android
4+
image: "guides/banners/neon.png"
5+
displayed_sidebar: resources
6+
keywords: [android, neon, web3auth, authentication, blockchain]
7+
description: "Integrate Web3Auth with the Neon Blockchain in Android | Documentation - Web3Auth"
8+
---
9+
10+
import InstallationSnippet from "@site/src/common/docs/android-connect-blockchain/_evm-installation.mdx";
11+
import GetAccountSnippet from "@site/src/common/docs/android-connect-blockchain/_evm-get-account.mdx";
12+
import UserInfoSnippet from "@site/src/common/docs/android-connect-blockchain/_evm-user-info.mdx";
13+
import GetBalanceSnippet from "@site/src/common/docs/android-connect-blockchain/_evm-get-balance.mdx";
14+
import InitialisationSnippet from "@site/src/common/docs/android-connect-blockchain/_evm-initialisation.mdx";
15+
import SignMessageSnippet from "@site/src/common/docs/android-connect-blockchain/_evm-sign-message.mdx";
16+
import SendTransactionSnippet from "@site/src/common/docs/android-connect-blockchain/_evm-send-transaction.mdx";
17+
import Tabs from "@theme/Tabs";
18+
import TabItem from "@theme/TabItem";
19+
import SEO from "@site/src/components/SEO";
20+
21+
<SEO
22+
title="Integrate Web3Auth with the Neon Blockchain in Android"
23+
description="Integrate Web3Auth with the Neon Blockchain in Android | Documentation - Web3Auth"
24+
image="https://web3auth.io/docs/guides/banners/neon.png"
25+
slug="/connect-blockchain/evm/neon/android"
26+
/>
27+
28+
While using the Web3Auth Android SDK, you get the private key and sessionId within the user scope.
29+
This private key can interact with [Neon](https://neonevm.org/) to make any blockchain calls, like
30+
getting the user's `account`, fetch `balance`, `sign transaction`, `send transaction`, `read` from
31+
and `write` to the smart contract, etc. We have highlighted a few here to get you started quickly on
32+
that.
33+
34+
## Installation
35+
36+
<InstallationSnippet />
37+
38+
## Chain Details for Neon
39+
40+
<Tabs
41+
defaultValue="mainnet"
42+
values={[
43+
{ label: "Mainnet", value: "mainnet", },
44+
{ label: "Testnet", value: "testnet", },
45+
]}
46+
>
47+
<TabItem
48+
value="mainnet"
49+
>
50+
51+
- Chain ID: 0xe9ac0d6
52+
- Public RPC URL: https://neon-proxy-mainnet.solana.p2p.org (Avoid using public rpcTarget in
53+
production, use services like Infura, Quicknode etc)
54+
- Display Name: Neon Mainnet
55+
- Block Explorer Link: https://neonscan.org/
56+
- Ticker: NEON
57+
- Ticker Name: NEON
58+
59+
</TabItem>
60+
61+
<TabItem
62+
value="testnet"
63+
>
64+
65+
- Chain ID: 0xe9ac0d6
66+
- Public RPC URL: https://devnet.neonevm.org (Avoid using public rpcTarget in production, use
67+
services like Infura, Quicknode etc)
68+
- Display Name: Neon Testnet
69+
- Block Explorer Link: https://devnet.neonscan.org/
70+
- Ticker: NEON
71+
- Ticker Name: NEON
72+
73+
</TabItem>
74+
</Tabs>
75+
76+
## Initialize
77+
78+
<InitialisationSnippet />
79+
80+
## Get User Info
81+
82+
<UserInfoSnippet />
83+
84+
## Get Account
85+
86+
<GetAccountSnippet />
87+
88+
## Get Balance
89+
90+
<GetBalanceSnippet />
91+
92+
## Send Transaction
93+
94+
<SendTransactionSnippet />
95+
96+
## Sign a message
97+
98+
<SignMessageSnippet />

0 commit comments

Comments
 (0)