Skip to content
Open
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
Binary file added .tmp-arc-favicon.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 6 additions & 0 deletions embedded-wallets/connect-blockchain/_evm-chains.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,12 @@ export const PopularEVMChains = [
icon: 'logo-arbitrum.png',
path: '/embedded-wallets/connect-blockchain/evm/arbitrum/',
},
{
key: 'arc',
title: 'Arc',
icon: 'logo-arc.png',
path: '/embedded-wallets/connect-blockchain/evm/arc/',
},
{
key: 'avalanche',
title: 'Avalanche',
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
import Tabs from '@theme/Tabs'
import TabItem from '@theme/TabItem'

:::note
Arc uses USDC as its native gas token.
Native balances (`eth_getBalance`, `msg.value`) use 18 decimals; the
[USDC ERC-20 interface](https://docs.arc.io/arc/references/contract-addresses#usdc)
at `0x3600000000000000000000000000000000000000` uses 6 decimals.
Both share one balance.
See [EVM differences](https://docs.arc.io/arc/references/evm-differences)
and [Add Arc to a wallet](https://docs.arc.io/integrate/wallets/add-arc-to-a-wallet).
:::

<Tabs
defaultValue="testnet"
values={[
{ label: "Testnet", value: "testnet" },
]}
>
<TabItem value="testnet">

- **Chain ID:** 0x4CEF52 (5042002)
- **Public RPC URL:** `https://rpc.testnet.arc.io`
- **Display Name:** Arc Testnet
- **Block Explorer Link:** `https://testnet.arcscan.app`
- **Ticker:** USDC
- **Ticker Name:** USDC

</TabItem>
</Tabs>
89 changes: 89 additions & 0 deletions embedded-wallets/connect-blockchain/evm/arc/README.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
---
title: Integrate Embedded Wallets with the Arc Blockchain
sidebar_label: Overview

keywords:
[arc, wallet, integration, web3auth, API, SDK, authentication, blockchain, solution, development]
image: 'img/embedded-wallets/banners/ethereum.png'
description: 'Integrate Embedded Wallets with the Arc Blockchain | Embedded Wallets'
---

import Tiles from '@theme/Tiles'
import ChainDetailsArc from '../../_general-connect-blockchain/_arc.mdx'

Integrate Embedded Wallets with EVM-based Arc blockchain. For Web SDKs, Web3Auth returns a provider that can be directly used to initialize the libraries like ethers.js, web3.js etc. and make blockchain calls, while for Mobile & Gaming SDKs, the private key is available in the user scope which can be used in a similar way to initialize the respective blockchain interaction libraries and make calls to the network.

This documentation provides a straightforward guide for developers looking to implement blockchain connections quickly and effortlessly across various platforms.

## Chain details for Arc

<ChainDetailsArc />

<!-- vale off -->

export const Arc = [
{
name: '',
description: '',
tiles: [
{
key: 'react',
title: 'React',
icon: 'logo-react.png',
path: '/embedded-wallets/connect-blockchain/evm/arc/react',
},
{
key: 'vue',
title: 'Vue',
icon: 'logo-vue.png',
path: '/embedded-wallets/connect-blockchain/evm/arc/vue',
},
{
key: 'javascript',
title: 'JavaScript',
icon: 'logo-js.png',
path: '/embedded-wallets/connect-blockchain/evm/arc/javascript',
},
{
key: 'android',
title: 'Android (Kotlin)',
icon: 'logo-android.png',
path: '/embedded-wallets/connect-blockchain/evm/arc/android',
},
{
key: 'apple',
title: 'iOS (Swift)',
icon: 'logo-apple.png',
path: '/embedded-wallets/connect-blockchain/evm/arc/ios',
},
{
key: 'flutter',
title: 'Flutter',
icon: 'logo-flutter.png',
path: '/embedded-wallets/connect-blockchain/evm/arc/flutter',
},
{
key: 'react-native',
title: 'React Native',
icon: 'logo-react.png',
path: '/embedded-wallets/connect-blockchain/evm/arc/react-native',
},
{
key: 'node',
title: 'Node',
icon: 'logo-nodejs.png',
path: '/embedded-wallets/connect-blockchain/evm/arc/node',
},
{
key: 'unity',
title: 'Unity',
icon: 'logo-unity.png',
path: '/embedded-wallets/connect-blockchain/evm/arc/unity',
},
],
},
]

<!-- vale on -->

<Tiles tileGroups={Arc} />
19 changes: 19 additions & 0 deletions embedded-wallets/connect-blockchain/evm/arc/android.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
title: Integrate Embedded Wallets with the Arc Blockchain in Android
sidebar_label: Android
image: 'img/embedded-wallets/banners/ethereum.png'

keywords: [android, arc, web3auth, authentication, blockchain]
description: 'Integrate Embedded Wallets with the Arc Blockchain in Android | Embedded Wallets'
---

import EVMInteraction from '../../_android-connect-blockchain/_evm-interaction.mdx'
import ChainDetailsArc from '../../_general-connect-blockchain/_arc.mdx'

While using the Embedded Wallets Android SDK, you get the private key within the user scope after successful authorization. This private key can be used to retrieve the user's address, and interact with [Arc](https://www.arc.io/) to make any blockchain calls.

## Chain details for Arc

<ChainDetailsArc />

<EVMInteraction />
19 changes: 19 additions & 0 deletions embedded-wallets/connect-blockchain/evm/arc/flutter.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
title: Integrate Embedded Wallets with the Arc Blockchain in Flutter
sidebar_label: Flutter
image: 'img/embedded-wallets/banners/ethereum.png'

keywords: [flutter, arc, web3auth, authentication, blockchain]
description: 'Integrate Embedded Wallets with the Arc Blockchain in Flutter | Embedded Wallets'
---

import EVMInteraction from '../../_flutter-connect-blockchain/_evm-interaction.mdx'
import ChainDetailsArc from '../../_general-connect-blockchain/_arc.mdx'

While using the Embedded Wallets Flutter SDK, you get the private key within the user scope after successful authorization. This private key can be used to retrieve the user's address, and interact with [Arc](https://www.arc.io/) to make any blockchain calls.

## Chain details for Arc

<ChainDetailsArc />

<EVMInteraction />
19 changes: 19 additions & 0 deletions embedded-wallets/connect-blockchain/evm/arc/ios.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
title: Integrate Embedded Wallets with the Arc Blockchain in iOS/Swift Applications
sidebar_label: iOS
image: 'img/embedded-wallets/banners/ethereum.png'

keywords: [ios, swift, arc, web3auth, authentication, blockchain]
description: 'Integrate Embedded Wallets with the Arc Blockchain in iOS/Swift Applications | Embedded Wallets'
---

import EVMInteraction from '../../_ios-connect-blockchain/_evm-interaction.mdx'
import ChainDetailsArc from '../../_general-connect-blockchain/_arc.mdx'

While using the Embedded Wallets iOS SDK, you get the private key within the user scope after successful authorization. This private key can be used to retrieve the user's address, and interact with [Arc](https://www.arc.io/) to make any blockchain calls.

## Chain details for Arc

<ChainDetailsArc />

<EVMInteraction />
21 changes: 21 additions & 0 deletions embedded-wallets/connect-blockchain/evm/arc/javascript.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
---
title: Integrate Embedded Wallets with the Arc Blockchain in JavaScript
sidebar_label: JavaScript
image: 'img/embedded-wallets/banners/ethereum.png'

keywords: [arc, web3auth, authentication, blockchain]
description: 'Integrate Embedded Wallets with the Arc Blockchain in Javascript | Embedded Wallets'
---

import ChainDetailsArc from '../../_general-connect-blockchain/_arc.mdx'
import JsBlockchainMethods from '../../../sdk/js/_ethereum-integration-snippets.mdx'

While using the Embedded Wallets JavaScript SDK, you get access to the Web3Auth provider. You can pair it up with the libraries like ethers.js, viem etc. to make EVM-based blockchain calls, like getting user's `account`, fetch `balance`, `sign transaction`, `send transaction`, `read` from and `write` to the smart contract, etc.

## Chain details for Arc

<ChainDetailsArc />

## For VanillaJS, Angular and other frameworks

<JsBlockchainMethods />
19 changes: 19 additions & 0 deletions embedded-wallets/connect-blockchain/evm/arc/node.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
title: Integrate Embedded Wallets with the Arc Blockchain in Node
sidebar_label: Node
image: 'img/embedded-wallets/banners/ethereum.png'

keywords: [node, arc, web3auth, authentication, blockchain]
description: 'Integrate Embedded Wallets with the Arc Blockchain in Node | Embedded Wallets'
---

import EVMInteraction from '../../_node-connect-blockchain/_evm-interaction.mdx'
import ChainDetailsArc from '../../_general-connect-blockchain/_arc.mdx'

While using the Embedded Wallets Node.js SDK, you get a viem WalletClient on successful authentication. This signer can be used with [viem](https://viem.sh/) to make [Arc](https://www.arc.io/) blockchain calls like getting the user's account, fetching balance, signing transactions, sending transactions, reading from and writing to smart contracts, etc.

## Chain details for Arc

<ChainDetailsArc />

<EVMInteraction />
19 changes: 19 additions & 0 deletions embedded-wallets/connect-blockchain/evm/arc/react-native.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
title: Integrate Embedded Wallets with the Arc Blockchain in React Native
sidebar_label: React Native
image: 'img/embedded-wallets/banners/ethereum.png'

keywords: [react-native, arc, web3auth, authentication, blockchain]
description: 'Integrate Embedded Wallets with the Arc Blockchain in React Native | Embedded Wallets'
---

import EVMInteraction from '../../_react-native-connect-blockchain/_evm-interaction.mdx'
import ChainDetailsArc from '../../_general-connect-blockchain/_arc.mdx'

While using the Embedded Wallets React Native SDK, you get a [`EIP1193`](https://eips.ethereum.org/EIPS/eip-1193) provider, similar to the [MetaMask Provider](/metamask-connect/evm/reference/provider-api/). This provider can be used with libraries like [`web3.js`](https://docs.web3js.org/), [`ethers.js`](https://docs.ethers.io/v5/getting-started/) etc. to make [Arc](https://www.arc.io/) blockchain calls like getting the user's `account`, fetching `balance`, `sign transaction`, `send transaction`, `read` from and `write` to the smart contract, etc.

## Chain details for Arc

<ChainDetailsArc />

<EVMInteraction />
21 changes: 21 additions & 0 deletions embedded-wallets/connect-blockchain/evm/arc/react.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
---
title: Integrate Embedded Wallets with the Arc Blockchain in React
sidebar_label: React
image: 'img/embedded-wallets/banners/ethereum.png'

keywords: [arc, web3auth, authentication, blockchain]
description: 'Integrate Embedded Wallets with the Arc Blockchain in React | Embedded Wallets'
---

import ChainDetailsArc from '../../_general-connect-blockchain/_arc.mdx'
import ReactWagmiIntegration from '../../../sdk/react/_ethereum-hooks-snippets.mdx'

While using the Embedded Wallets React SDK, you get access to the Web3Auth Hooks. You can pair it up with the Wagmi hooks to make EVM-based blockchain calls, like getting user's `account`, fetch `balance`, `sign transaction`, `send transaction`, `read` from and `write` to the smart contract, etc.

## Chain details for Arc

<ChainDetailsArc />

## React Wagmi integration

<ReactWagmiIntegration />
19 changes: 19 additions & 0 deletions embedded-wallets/connect-blockchain/evm/arc/unity.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
title: Integrate Embedded Wallets with the Arc Blockchain in Unity
sidebar_label: Unity
image: 'img/embedded-wallets/banners/ethereum.png'

keywords: [unity, arc, web3auth, authentication, blockchain]
description: 'Integrate Embedded Wallets with the Arc Blockchain in Unity | Embedded Wallets'
---

import EVMInteraction from '../../_unity-connect-blockchain/_evm-interaction.mdx'
import ChainDetailsArc from '../../_general-connect-blockchain/_arc.mdx'

While using the Embedded Wallets Unity SDK, you get the private key within the user scope. This private key can interact with the [Nethereum Library](https://nethereum.com/) to make EVM-based blockchain calls, like getting user's `account`, fetch `balance`, `sign transaction`, `send transaction`, `read` from and `write` to the smart contract, etc.

## Chain details for Arc

<ChainDetailsArc />

<EVMInteraction />
21 changes: 21 additions & 0 deletions embedded-wallets/connect-blockchain/evm/arc/vue.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
---
title: Integrate Embedded Wallets with the Arc Blockchain in Vue
sidebar_label: Vue
image: 'img/embedded-wallets/banners/ethereum.png'

keywords: [arc, web3auth, authentication, blockchain]
description: 'Integrate Embedded Wallets with the Arc Blockchain in Vue | Embedded Wallets'
---

import ChainDetailsArc from '../../_general-connect-blockchain/_arc.mdx'
import VueWagmiIntegration from '../../../sdk/vue/_ethereum-composables-snippets.mdx'

While using the Embedded Wallets Vue SDK, you get access to the Web3Auth Composables. You can pair it up with the Wagmi composables to make EVM-based blockchain calls, like getting user's `account`, fetch `balance`, `sign transaction`, `send transaction`, `read` from and `write` to the smart contract, etc.

## Chain details for Arc

<ChainDetailsArc />

## Vue Wagmi integration

<VueWagmiIntegration />
5 changes: 5 additions & 0 deletions ew-sidebar.js
Original file line number Diff line number Diff line change
Expand Up @@ -288,6 +288,11 @@ const sidebar = {
label: 'Arbitrum',
items: [{ type: 'autogenerated', dirName: 'connect-blockchain/evm/arbitrum' }],
},
{
type: 'category',
label: 'Arc',
items: [{ type: 'autogenerated', dirName: 'connect-blockchain/evm/arc' }],
},
{
type: 'category',
label: 'Avalanche',
Expand Down
Binary file added static/logos/logo-arc.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading