Skip to content

Commit 3ab336a

Browse files
committed
Merge branch 'yash/ocr-contracts-integration' into 06-16-_tool-4689_dashboard_integrate_erc20asset_contract_in_token_creation_flow
2 parents 5f8c503 + f524857 commit 3ab336a

File tree

1,974 files changed

+58671
-40894
lines changed

Some content is hidden

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

1,974 files changed

+58671
-40894
lines changed

.changeset/shaky-candles-rule.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"thirdweb": patch
3+
---
4+
5+
Deprecates `sortBy` parameter in Bridge.routes

.changeset/slick-cups-joke.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"thirdweb": patch
3+
---
4+
5+
Adds TikTok as a new authentication method for In-App and Ecosystem Wallets.

.changeset/warm-ways-decide.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"thirdweb": patch
3+
---
4+
5+
Hide quote value in payment widgets

README.md

Lines changed: 144 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -15,37 +15,150 @@
1515

1616
<p align="center"><strong>All-in-one web3 SDK for Browser, Node and Mobile apps</strong></p>
1717

18-
## Features
19-
20-
- Support for React & React-Native
21-
- First party support for [Embedded Wallets](https://portal.thirdweb.com/connect/embedded-wallet/overview) (social/email login)
22-
- First party support for [Account Abstraction](https://portal.thirdweb.com/connect/account-abstraction/overview)
23-
- Instant connection to any chain with RPC Edge integration
24-
- Integrated IPFS upload/download
25-
- UI Components for connection, transactions, nft rendering
26-
- High level contract extensions for interacting with common standards
18+
## Core Package
19+
20+
#### [`thirdweb`](./packages/thirdweb/README.md)
21+
22+
The main SDK package providing all-in-one web3 functionality for Browser, Node, and Mobile applications.
23+
24+
```bash
25+
npm install thirdweb
26+
```
27+
28+
**Features:**
29+
30+
- Type-safe contract and transaction APIs
31+
- In-app wallets with social/email login
32+
- Account abstraction (ERC4337/EIP7702) support
33+
- 500+ external wallets supported
34+
- Built in infra (RPC, bundler, paymaster, indexer)
35+
- React hooks and UI components
2736
- Automatic ABI resolution
37+
- IPFS upload/download
38+
- Cross-platform support (Web, React Native)
39+
40+
### Documentation
41+
42+
Visit the [developer portal](https://portal.thirdweb.com) for full documentation.
43+
44+
### 🚀 Quick Start
45+
46+
#### For React Applications
47+
48+
```bash
49+
npm install thirdweb
50+
```
51+
52+
```typescript
53+
import { createThirdwebClient } from "thirdweb";
54+
import { ConnectButton, useActiveAccount } from "thirdweb/react";
55+
56+
const client = createThirdwebClient({
57+
clientId: "YOUR_CLIENT_ID",
58+
});
59+
60+
function App() {
61+
const account = useActiveAccount();
62+
console.log("Connected as", account?.address);
63+
64+
return <ConnectButton client={client} />;
65+
}
66+
```
67+
68+
For React Native Applications, you'll also need to install the `@thirdweb-dev/react-native-adapter` package and import it at app startup for polyfills.
69+
70+
#### For Backend Applications
71+
72+
```bash
73+
npm install thirdweb
74+
```
75+
76+
```typescript
77+
import { createThirdwebClient, Engine } from "thirdweb";
78+
79+
const client = createThirdwebClient({
80+
secretKey: "YOUR_SECRET_KEY",
81+
});
82+
83+
const wallet = Engine.serverWallet({
84+
client,
85+
address: "0x...",
86+
});
87+
88+
const transaction = transfer({
89+
contract: getContract({
90+
client,
91+
address: "0x...", // token contract
92+
chain: defineChain(1),
93+
}),
94+
to: "0x...", // recipient
95+
amount: "0.01", // amount in tokens
96+
});
97+
98+
await wallet.enqueueTransaction({
99+
transaction,
100+
});
101+
```
102+
103+
## Adapters
104+
105+
#### [`@thirdweb-dev/react-native-adapter`](./packages/react-native-adapter/README.md)
106+
107+
Required polyfills and configuration for running the thirdweb SDK in React Native applications.
108+
109+
```bash
110+
npm install @thirdweb-dev/react-native-adapter
111+
```
112+
113+
#### [`@thirdweb-dev/wagmi-adapter`](./packages/wagmi-adapter/README.md)
114+
115+
Integration layer for using thirdweb's in-app wallets with wagmi.
116+
117+
```bash
118+
npm install @thirdweb-dev/wagmi-adapter
119+
```
120+
121+
## Type safe API wrappers
122+
123+
#### [`@thirdweb-dev/api`](./packages/api/README.md)
124+
125+
TypeScript SDK for thirdweb's API, combining all of thirdweb products.
126+
127+
```bash
128+
npm install @thirdweb-dev/api
129+
```
130+
131+
#### [`@thirdweb-dev/engine`](./packages/engine/README.md)
132+
133+
TypeScript SDK for Engine, thirdweb's backend onchain executor service.
134+
135+
```bash
136+
npm install @thirdweb-dev/engine
137+
```
138+
139+
#### [`@thirdweb-dev/insight`](./packages/insight/README.md)
140+
141+
TypeScript SDK for Insight, thirdweb's multichain indexer service.
142+
143+
```bash
144+
npm install @thirdweb-dev/insight
145+
```
146+
147+
#### [`@thirdweb-dev/vault-sdk`](./packages/vault-sdk/README.md)
148+
149+
SDK for interacting with Vault, thirdweb's secure key management service.
150+
151+
```bash
152+
npm install @thirdweb-dev/vault-sdk
153+
```
154+
155+
#### [`@thirdweb-dev/nebula`](./packages/nebula/README.md)
156+
157+
TypeScript SDK for Nebula, thirdweb's AI agent service.
28158

29-
## Library Comparison
30-
31-
| | thirdweb | Wagmi + Viem | Ethers@6 |
32-
| ----------------------------------------- | -------- | ------------------ | -------- |
33-
| Type safe contract API ||||
34-
| Type safe wallet API ||||
35-
| EVM utils ||||
36-
| RPC for any EVM | ✅  | ⚠️ public RPC only ||
37-
| Automatic ABI Resolution ||||
38-
| IPFS Upload/Download ||||
39-
| Embedded wallet (email/ social login) || ⚠️ via 3rd party ||
40-
| Account abstraction (ERC4337) support || ⚠️ via 3rd party ||
41-
| Web3 wallet connectors ||||
42-
| Local wallet creation ||||
43-
| Auth (SIWE) ||||
44-
| Extensions functions for common standards ||||
45-
| React Hooks ||||
46-
| React UI components ||||
47-
| React Native Hooks ||||
48-
| React Native UI Components ||||
159+
```bash
160+
npm install @thirdweb-dev/nebula
161+
```
49162

50163
## Contributing
51164

@@ -55,7 +168,8 @@ See our [open source page](https://thirdweb.com/open-source) for more informatio
55168

56169
## Additional Resources
57170

58-
- [Documentation](https://portal.thirdweb.com/typescript/v5)
171+
- [Dashboard](https://thirdweb.com/login)
172+
- [Documentation](https://portal.thirdweb.com/)
59173
- [Templates](https://thirdweb.com/templates)
60174
- [YouTube](https://www.youtube.com/c/thirdweb)
61175

apps/dashboard/.env.example

Lines changed: 20 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,22 @@
1-
#
21
# Public (client)
3-
#
4-
5-
# API authorized domain
6-
# not required to build, defaults to prod
7-
NEXT_PUBLIC_THIRDWEB_DOMAIN="localhost:3000"
2+
# ------------------------------------------------------------------------
83

94
# API host. For local development, please use "https://api.thirdweb-dev.com"
105
# otherwise: "https://api.thirdweb.com"
6+
# local host - http://127.0.0.1:3005
117
NEXT_PUBLIC_THIRDWEB_API_HOST="https://api.thirdweb-dev.com"
128

139
# Bridge API. For local development, please use "https://bridge.thirdweb-dev.com"
1410
# otherwise: "https://bridge.thirdweb.com"
1511
NEXT_PUBLIC_THIRDWEB_BRIDGE_HOST="https://bridge.thirdweb-dev.com"
1612

17-
# Paper API host
13+
# in-app wallet host
1814
NEXT_PUBLIC_THIRDWEB_EWS_API_HOST="https://ews.thirdweb-dev.com"
1915

20-
# thirdweb local api host
21-
# NEXT_PUBLIC_THIRDWEB_API_HOST="http://127.0.0.1:3005"
22-
23-
# Client ID
24-
# Get the client id from https://thirdweb.com/create-api-key and set it here,
16+
# Client ID - Required
17+
# Get the client id from https://thirdweb.com/create-api-key and set it here, and also set DASHBOARD_SECRET_KEY below
2518
# make sure to allow localhost:3000 in the allowed origins
26-
NEXT_PUBLIC_DASHBOARD_CLIENT_ID="<replace_me_with_your_client_id>"
19+
NEXT_PUBLIC_DASHBOARD_CLIENT_ID=""
2720

2821
# IPFS gateway url
2922
NEXT_PUBLIC_IPFS_GATEWAY_URL="https://{clientId}.thirdwebstorage-dev.com/ipfs/{cid}/{path}"
@@ -39,62 +32,35 @@ NEXT_PUBLIC_TYPESENSE_CONTRACT_API_KEY=
3932
# - not required for prod/staging
4033
NEXT_PUBLIC_POSTHOG_KEY=""
4134

42-
# Stripe Customer portal
43-
NEXT_PUBLIC_STRIPE_KEY=
44-
45-
NEXT_PUBLIC_STRIPE_PAYMENT_METHOD_CFG_ID=
46-
47-
#
48-
# Private (server)
49-
#
50-
# Get the secret key from https://thirdweb.com/create-api-key and set it here, Make sure to allow localhost:3000 in the allowed origins
51-
DASHBOARD_SECRET_KEY="<replace_me_with_your_secret_key>"
52-
53-
# Client id for api routes
54-
API_ROUTES_CLIENT_ID=
55-
56-
# <moralis.io API key (used for api routes for token balances and wallet NFTs)
57-
# - not required to build (unless using wallet NFTs and token balances)>
58-
MORALIS_API_KEY=
35+
# required for server wallet management
36+
NEXT_PUBLIC_THIRDWEB_VAULT_URL=""
37+
NEXT_PUBLIC_ENGINE_CLOUD_URL=""
5938

60-
# alchemy.com API key (used for wallet NFTS)
61-
# - cannot be restricted to IP/domain because vercel has no stable IPs and it happens during build & runtime api route call
62-
# - not required to build (unless testing wallet NFTs)>
63-
SSR_ALCHEMY_KEY=
6439

40+
# Demo Engine - required for showing demo engine page
41+
NEXT_PUBLIC_DEMO_ENGINE_URL=""
6542

66-
# Hubspot Access Token (used for contact us form)
67-
# - not required to build (unless testing contact us form)>
68-
HUBSPOT_ACCESS_TOKEN=
6943

70-
# Upload server url
71-
NEXT_PUBLIC_DASHBOARD_UPLOAD_SERVER="https://storage.thirdweb-preview.com"
44+
# Private (server)
45+
# ------------------------------------------------------------------------
7246

73-
# Unthread variables - only required for submitting the support form in /support
74-
UNTHREAD_API_KEY=""
75-
UNTHREAD_TRIAGE_CHANNEL_ID=""
76-
UNTHREAD_EMAIL_INBOX_ID=""
77-
UNTHREAD_FREE_TIER_ID=""
78-
UNTHREAD_GROWTH_TIER_ID=""
79-
UNTHREAD_PRO_TIER_ID=""
47+
# Get the secret key from https://thirdweb.com/create-api-key and set it here and also set NEXT_PUBLIC_DASHBOARD_CLIENT_ID above,
48+
# Make sure to allow localhost:3000 in the allowed origins
49+
DASHBOARD_SECRET_KEY="<replace_me_with_your_secret_key>"
8050

81-
# Demo Engine
82-
NEXT_PUBLIC_DEMO_ENGINE_URL=""
51+
# Client id for api routes - required for contract OG image generation
52+
API_ROUTES_CLIENT_ID=
8353

8454
# API server secret (required for thirdweb.com SIWE login). Copy from Vercel.
8555
API_SERVER_SECRET=""
8656

87-
# Used for the Faucet page (/<chain_id>)
57+
# Used in faucet on chain page (/<chain-id>) and login page (/login) - turnstile is disabled in localhost development
8858
NEXT_PUBLIC_TURNSTILE_SITE_KEY=""
8959
TURNSTILE_SECRET_KEY=""
60+
9061
REDIS_URL=""
9162

9263
ANALYTICS_SERVICE_URL=""
9364

94-
9565
# required for billing parts of the dashboard (team -> settings -> billing / invoices)
9666
STRIPE_SECRET_KEY=""
97-
98-
# required for server wallet management
99-
NEXT_PUBLIC_THIRDWEB_VAULT_URL=""
100-
NEXT_PUBLIC_ENGINE_CLOUD_URL=""

0 commit comments

Comments
 (0)