diff --git a/apps/portal/redirects.mjs b/apps/portal/redirects.mjs
index 947966ba20a..feddc68811e 100644
--- a/apps/portal/redirects.mjs
+++ b/apps/portal/redirects.mjs
@@ -712,6 +712,7 @@ const walletRedirects = {
const paymentRedirects = {
"/pay": "/payments",
+ "/pay/:path*": "/payments",
"/checkouts": "/payments",
"/checkouts/api-reference": "/payments/nft-checkout/api-reference",
"/checkouts/checkout-link": "/payments/nft-checkout/checkout-link",
@@ -920,7 +921,6 @@ const otherRedirects = {
"/connect/account-abstraction": "/connect/account-abstraction/overview",
// connect
"/connect/connect": "/connect/sign-in",
- "/connect/ecosystems/:path*": "/connect/wallet/overview",
"/connect/embedded-wallet/how-to/get-embedded-wallet-details-on-server":
"/connect/in-app-wallet/how-to/get-in-app-wallet-details-on-server",
"/connect/in-app-wallet/how-to/get-in-app-wallet-details-on-server":
@@ -1021,6 +1021,9 @@ const otherRedirects = {
"/connect/wallet/server": "/wallets/server",
"/connect/account-abstraction/get-started": "/wallets/sponsor-gas",
"/connect/account-abstraction/:path*": "/wallets/sponsor-gas",
+ "/connect/pay/:path*": "/payments",
+ "/connect/ecosystems/:path*": "/wallets/ecosystem/set-up",
+ "/connect/:path*": "/wallets",
"/wallets/in-app-wallet/custom-auth/configuration": "/wallets/custom-auth",
"/connect/wallets/user-management/link-multiple-identity":
"/wallets/link-profiles",
diff --git a/apps/portal/src/app/Header.tsx b/apps/portal/src/app/Header.tsx
index ed78d8cc004..cf30a76c273 100644
--- a/apps/portal/src/app/Header.tsx
+++ b/apps/portal/src/app/Header.tsx
@@ -82,7 +82,7 @@ export const connectLinks: Array<{
icon: React.FC<{ className?: string }>;
}> = [
{
- href: "/connect",
+ href: "/wallets",
icon: TableOfContentsIcon,
name: "Overview",
},
diff --git a/apps/portal/src/app/account/api-keys/page.mdx b/apps/portal/src/app/account/api-keys/page.mdx
index 0c5ad85f02a..45523805697 100644
--- a/apps/portal/src/app/account/api-keys/page.mdx
+++ b/apps/portal/src/app/account/api-keys/page.mdx
@@ -12,7 +12,7 @@ export const metadata = createMetadata({
# API Keys
-Each thirdweb project is equipped with an API key to use thirdweb's infrastructure services including [Storage](/infrastructure/storage/overview), [RPC Edge](/infrastructure/rpc-edge/overview), [Account Abstraction infrastructure](/connect/account-abstraction), and [In-App Wallets](/connect/in-app-wallet/overview).
+Each thirdweb project is equipped with an API key to use thirdweb's infrastructure services including [Storage](/infrastructure/storage/overview), [RPC Edge](/infrastructure/rpc-edge/overview), [Account Abstraction infrastructure](/bundler), and [In-App Wallets](/wallets).
## Services
diff --git a/apps/portal/src/app/infrastructure/sidebar.tsx b/apps/portal/src/app/infrastructure/sidebar.tsx
index e2222570f82..6dd7a066fea 100644
--- a/apps/portal/src/app/infrastructure/sidebar.tsx
+++ b/apps/portal/src/app/infrastructure/sidebar.tsx
@@ -27,7 +27,7 @@ export const sidebar: SideBar = {
{
links: [
{
- href: "/connect",
+ href: "/wallets",
name: "TypeScript SDK",
},
{
diff --git a/apps/portal/src/app/layout.tsx b/apps/portal/src/app/layout.tsx
index 08e74a8e194..ac8131b878d 100644
--- a/apps/portal/src/app/layout.tsx
+++ b/apps/portal/src/app/layout.tsx
@@ -53,7 +53,7 @@ export default function RootLayout({
{/* */}
diff --git a/apps/portal/src/app/nebula/get-started/page.mdx b/apps/portal/src/app/nebula/get-started/page.mdx
index b756d9c0f70..da053619be4 100644
--- a/apps/portal/src/app/nebula/get-started/page.mdx
+++ b/apps/portal/src/app/nebula/get-started/page.mdx
@@ -105,7 +105,7 @@ async function handleNebulaResponse(response) {
secretKey: process.env.THIRDWEB_SECRET_KEY,
});
- // You can use any wallet- see https://portal.thirdweb.com/connect/external-wallets
+ // You can use any wallet- see https://portal.thirdweb.com/wallets/external-wallets
const account = await generateAccount({ client });
if (response.actions && response.actions.length > 0) {
diff --git a/apps/portal/src/app/page.tsx b/apps/portal/src/app/page.tsx
index 0ece28fb5e5..784e185b529 100644
--- a/apps/portal/src/app/page.tsx
+++ b/apps/portal/src/app/page.tsx
@@ -128,7 +128,7 @@ function ReferenceSection() {
title="Payments"
/>
diff --git a/apps/portal/src/app/pay/faqs/page.mdx b/apps/portal/src/app/pay/faqs/page.mdx
index 9cbad4d3105..d58f7caa761 100644
--- a/apps/portal/src/app/pay/faqs/page.mdx
+++ b/apps/portal/src/app/pay/faqs/page.mdx
@@ -45,7 +45,7 @@ Yes, Payments is designed to be agnostic to wallet infrastructure. You can use i
-Apple Pay and Google Pay are supported through the onramp providers depending on region. Coinbase, Stripe, and Transak currently support Apple Pay. Transak supports Google Pay. [Learn more about the supported onramp providers.](/connect/pay/onramp-providers).
+Apple Pay and Google Pay are supported through the onramp providers depending on region. Coinbase, Stripe, and Transak currently support Apple Pay. Transak supports Google Pay.
diff --git a/apps/portal/src/app/payments/faq/page.mdx b/apps/portal/src/app/payments/faq/page.mdx
index b748d948cde..f648d93d6e1 100644
--- a/apps/portal/src/app/payments/faq/page.mdx
+++ b/apps/portal/src/app/payments/faq/page.mdx
@@ -45,7 +45,7 @@ Yes, Payments is designed to be agnostic to wallet infrastructure. You can use i
-Apple Pay and Google Pay are supported through the onramp providers depending on region. Coinbase, Stripe, and Transak currently support Apple Pay. Transak supports Google Pay. [Learn more about the supported onramp providers.](/connect/pay/onramp-providers).
+Apple Pay and Google Pay are supported through the onramp providers depending on region. Coinbase, Stripe, and Transak currently support Apple Pay. Transak supports Google Pay.
diff --git a/apps/portal/src/app/react/v5/components/ConnectButton/page.mdx b/apps/portal/src/app/react/v5/components/ConnectButton/page.mdx
index 8cc9d241d08..7c69d6d904c 100644
--- a/apps/portal/src/app/react/v5/components/ConnectButton/page.mdx
+++ b/apps/portal/src/app/react/v5/components/ConnectButton/page.mdx
@@ -72,7 +72,7 @@ function Example() {
diff --git a/apps/portal/src/app/react/v5/components/ConnectEmbed/page.mdx b/apps/portal/src/app/react/v5/components/ConnectEmbed/page.mdx
index 5b9faa66304..667f849b927 100644
--- a/apps/portal/src/app/react/v5/components/ConnectEmbed/page.mdx
+++ b/apps/portal/src/app/react/v5/components/ConnectEmbed/page.mdx
@@ -71,7 +71,7 @@ function Example() {
diff --git a/apps/portal/src/app/react/v5/connecting-wallets/hooks/page.mdx b/apps/portal/src/app/react/v5/connecting-wallets/hooks/page.mdx
index b77146fadca..eb073836287 100644
--- a/apps/portal/src/app/react/v5/connecting-wallets/hooks/page.mdx
+++ b/apps/portal/src/app/react/v5/connecting-wallets/hooks/page.mdx
@@ -14,7 +14,7 @@ export const metadata = createMetadata({
# Connection Hooks
-You can build a completely custom UI for connecting the wallet using the [`useConnect`](/references/typescript/v5/useConnect) hook to connect any of [supported wallets](/connect/external-wallets).
+You can build a completely custom UI for connecting the wallet using the [`useConnect`](/references/typescript/v5/useConnect) hook to connect any of [supported wallets](/wallets/external-wallets).
```tsx
import { createThirdwebClient } from "thirdweb";
diff --git a/apps/portal/src/app/react/v5/connecting-wallets/ui-components/page.mdx b/apps/portal/src/app/react/v5/connecting-wallets/ui-components/page.mdx
index c546c2e7ed1..57beb1b3c24 100644
--- a/apps/portal/src/app/react/v5/connecting-wallets/ui-components/page.mdx
+++ b/apps/portal/src/app/react/v5/connecting-wallets/ui-components/page.mdx
@@ -106,7 +106,7 @@ The SDK supports 500+ wallets out of the box, all you need to pass is their id.
diff --git a/apps/portal/src/app/react/v5/migrate/installation/page.mdx b/apps/portal/src/app/react/v5/migrate/installation/page.mdx
index 0ad22de56b2..ef6e9d423dc 100644
--- a/apps/portal/src/app/react/v5/migrate/installation/page.mdx
+++ b/apps/portal/src/app/react/v5/migrate/installation/page.mdx
@@ -84,7 +84,7 @@ import { ThirdwebProvider } from "thirdweb/react"; // v5
Similar to v4's `ConnectWallet` component, the latest version has the [`ConnectButton`](/connect/sign-in/ConnectButton) component which has the same functionality.
However, unlike with v4 where the number of supported wallets is limited (about 20), and adding more wallets mean your app becomes heavier,
-the SDK v5 supports [over 300 wallets](/connect/external-wallets) with virtually no impact to your application.
+the SDK v5 supports [over 300 wallets](/wallets/external-wallets) with virtually no impact to your application.
Here's how you use the new `ConnectButton`:
@@ -99,7 +99,7 @@ const client = createThirdwebClient({
```
-To learn more about the new `ConnectButton`, head over to the [Playground](https://playground.thirdweb.com/connect/sign-in/button).
+To learn more about the new `ConnectButton`, head over to the [Playground](/connect/sign-in/button).
Notice how you are passing the thirdweb client to the component itself and not to the `ThirdwebProvider` like in v4?
By not putting every config inside the context wrapper, we were able to make the SDK v5 much more lightweight since you only load what you need!
diff --git a/apps/portal/src/app/react/v5/sidebar.tsx b/apps/portal/src/app/react/v5/sidebar.tsx
index 49158b17b7b..f62c0b2f2a0 100644
--- a/apps/portal/src/app/react/v5/sidebar.tsx
+++ b/apps/portal/src/app/react/v5/sidebar.tsx
@@ -51,7 +51,7 @@ export const sidebar: SideBar = {
name: "Ecosystems Wallets",
},
{
- href: "/connect/external-wallets",
+ href: "/wallets/external-wallets",
name: "External Wallets",
},
{
diff --git a/apps/portal/src/app/transactions/distribute-tokens/page.mdx b/apps/portal/src/app/transactions/distribute-tokens/page.mdx
index 2563e236c8d..7b254fc6fcf 100644
--- a/apps/portal/src/app/transactions/distribute-tokens/page.mdx
+++ b/apps/portal/src/app/transactions/distribute-tokens/page.mdx
@@ -25,7 +25,7 @@ The transactions API makes it effortless for any developer to airdrop tokens at
## Prerequisites
- A deployed token contract (Coin or NFT contract)
-- A [server wallet](/connect/wallet/server) holding tokens to distribute
+- A [server wallet](/wallets/server) holding tokens to distribute
- A client ID and secret key from your Team > Project > Settings page.
## Frontend: Add Connect Wallet and Claim buttons
diff --git a/apps/portal/src/app/transactions/page.mdx b/apps/portal/src/app/transactions/page.mdx
index 7da63c41ebb..0773a46f526 100644
--- a/apps/portal/src/app/transactions/page.mdx
+++ b/apps/portal/src/app/transactions/page.mdx
@@ -71,7 +71,7 @@ Send, monitor, and manage transactions. Send transactions from user or server wa
### Send a Transaction
- You can send transactions with your [server wallets](/connect/wallet/server) using the [transactions API](https://engine.thirdweb.com/reference).
+ You can send transactions with your [server wallets](/wallets/server) using the [transactions API](https://engine.thirdweb.com/reference).
```http
POST /v1/contract/write
@@ -146,7 +146,7 @@ Send, monitor, and manage transactions. Send transactions from user or server wa
### Send a Transaction
- Send a transaction from a [user wallet](/connect/wallet/sign-in-methods/configure) from the frontend, or [server wallet](/connect/wallet/server) from the backend.
+ Send a transaction from a [user wallet](/wallets/users) from the frontend, or [server wallet](/wallets/server) from the backend.
diff --git a/apps/portal/src/app/transactions/session-keys/page.mdx b/apps/portal/src/app/transactions/session-keys/page.mdx
index 5e3862d68fb..16081c42f0b 100644
--- a/apps/portal/src/app/transactions/session-keys/page.mdx
+++ b/apps/portal/src/app/transactions/session-keys/page.mdx
@@ -7,7 +7,7 @@ Session keys enable secure transaction execution on behalf of smart accounts wit
Before you begin, ensure you have:
- A thirdweb client configured
- A frontend application
-- A [server wallet](/connect/wallet/server)
+- A [server wallet](/wallets/server)
## Frontend Setup
diff --git a/apps/portal/src/app/transactions/stripe-payments/page.mdx b/apps/portal/src/app/transactions/stripe-payments/page.mdx
index b2da9a94b75..16b83ee7407 100644
--- a/apps/portal/src/app/transactions/stripe-payments/page.mdx
+++ b/apps/portal/src/app/transactions/stripe-payments/page.mdx
@@ -25,7 +25,7 @@ The buyer receives the NFT without requiring wallet signatures or gas funds.
## Prerequisites
- A thirdweb client ID and secret key from your Team > Project > Settings page.
-- A [server wallet](/connect/wallet/server)
+- A [server wallet](/wallets/server)
- A deployed NFT contract that can be used by the server wallet
- A [Stripe account](https://dashboard.stripe.com/register) on test mode
diff --git a/apps/portal/src/app/typescript/v5/connecting-wallets/page.mdx b/apps/portal/src/app/typescript/v5/connecting-wallets/page.mdx
index 0ede4d77186..fe688b168a9 100644
--- a/apps/portal/src/app/typescript/v5/connecting-wallets/page.mdx
+++ b/apps/portal/src/app/typescript/v5/connecting-wallets/page.mdx
@@ -24,7 +24,7 @@ The SDK supports 500+ wallets out of the box, all you need to pass is their id.
diff --git a/apps/portal/src/app/typescript/v5/wallets/page.mdx b/apps/portal/src/app/typescript/v5/wallets/page.mdx
index f52d7c98c6f..7ef17a02013 100644
--- a/apps/portal/src/app/typescript/v5/wallets/page.mdx
+++ b/apps/portal/src/app/typescript/v5/wallets/page.mdx
@@ -34,7 +34,7 @@ See also: [Account (ethereum.org)](https://ethereum.org/en/glossary/#account)
diff --git a/apps/portal/src/app/wallets/auth/deploying-to-production/page.mdx b/apps/portal/src/app/wallets/auth/deploying-to-production/page.mdx
index 9199b3e8578..e5f89dbce4d 100644
--- a/apps/portal/src/app/wallets/auth/deploying-to-production/page.mdx
+++ b/apps/portal/src/app/wallets/auth/deploying-to-production/page.mdx
@@ -21,14 +21,14 @@ export const metadata = createMetadata({
Before you deploy your app to real users, you'll want to make sure your application is secure and ready to onboard users to your app. This involves separating some operations to the server and others to the client.
-The examples in [Getting Started](/connect/auth) do everything on the client. The following examples demonstrate what should be on the server instead to ensure your application is secure.
+The examples in [Getting Started](/wallets/auth) do everything on the client. The following examples demonstrate what should be on the server instead to ensure your application is secure.
Some of the code here is left for you to implement. This provides you with
flexibility and control over your application's authentication. However, if
you'd like specific examples, check out our
- [templates](/connect/auth#templates) or [framework
- guides](/connect/auth#frameworks).
+ [templates](/wallets/auth#templates) or [framework
+ guides](/wallets/auth#frameworks).
diff --git a/apps/portal/src/app/wallets/auth/page.mdx b/apps/portal/src/app/wallets/auth/page.mdx
index ad06344eb1e..715cbdd0337 100644
--- a/apps/portal/src/app/wallets/auth/page.mdx
+++ b/apps/portal/src/app/wallets/auth/page.mdx
@@ -158,14 +158,14 @@ Auth integrates with a variety of server-side and client-side development framew
diff --git a/apps/portal/src/app/wallets/external-wallets/[walletId]/page.tsx b/apps/portal/src/app/wallets/external-wallets/[walletId]/page.tsx
index fd9bc622b09..8a09c3497e9 100644
--- a/apps/portal/src/app/wallets/external-wallets/[walletId]/page.tsx
+++ b/apps/portal/src/app/wallets/external-wallets/[walletId]/page.tsx
@@ -57,11 +57,11 @@ export default async function Page(props: PageProps) {
,
name: "Templates",
},
- {
- href: `${walletSlug}/ecosystem/set-up`,
- name: "Ecosystem Wallets",
- },
{
href: `${walletSlug}/security`,
name: "Security",
diff --git a/apps/portal/src/app/wallets/users/page.mdx b/apps/portal/src/app/wallets/users/page.mdx
index 9e66da2c175..e0c32494be4 100644
--- a/apps/portal/src/app/wallets/users/page.mdx
+++ b/apps/portal/src/app/wallets/users/page.mdx
@@ -15,7 +15,7 @@ import { AuthMethodsTabs } from "@/components/Document/AuthMethodsTabs"
# User Wallets
-thirdweb supports creating wallets with various authentication methods: social logins, email, SMS, passkeys, and more. For every user, thirdweb generates a [non-custodial wallet](/connect/wallet/security) behind the scenes.
+thirdweb supports creating wallets with various authentication methods: social logins, email, SMS, passkeys, and more. For every user, thirdweb generates a [non-custodial wallet](/wallets/security) behind the scenes.
@@ -25,7 +25,7 @@ If you already have an auth system, you can use thirdweb to attach wallets to yo
{w.name}
diff --git a/apps/portal/src/components/others/DocSearch.tsx b/apps/portal/src/components/others/DocSearch.tsx
index 767da16ae4d..e86b64b5c43 100644
--- a/apps/portal/src/components/others/DocSearch.tsx
+++ b/apps/portal/src/components/others/DocSearch.tsx
@@ -23,16 +23,16 @@ const suggestedLinks: { title: string; href: string }[] = [
title: "TypeScript SDK",
},
{
- href: "/connect",
- title: "Connect",
+ href: "/wallets",
+ title: "Wallets",
},
{
href: "/contracts",
title: "Contracts",
},
{
- href: "/engine",
- title: "Engine",
+ href: "/transactions",
+ title: "Transactions",
},
{
href: "/payments",
@@ -46,7 +46,7 @@ type Tag =
| "Unity"
| "TypeScript"
| "Wallet SDK"
- | "Connect"
+ | "Wallets"
| "Reference"
| "Python"
| "Contracts"
@@ -56,7 +56,8 @@ type Tag =
| "Solidity"
| "Payments"
| "Glossary"
- | "Engine";
+ | "Engine"
+ | "Transactions";
function SearchModalContent(props: { closeModal: () => void }) {
const [input, setInput] = useState("");
@@ -422,12 +423,15 @@ function getTagsFromHref(href: string): Tag[] | undefined {
if (href.includes("/react/v5")) {
return ["React"];
}
- if (href.includes("/connect")) {
- return ["Connect"];
+ if (href.includes("/wallets")) {
+ return ["Wallets"];
}
if (href.includes("/engine")) {
return ["Engine"];
}
+ if (href.includes("/transactions")) {
+ return ["Transactions"];
+ }
if (href.includes("/infrastructure")) {
return ["Infra"];
}
diff --git a/apps/portal/src/components/ui/tabs.tsx b/apps/portal/src/components/ui/tabs.tsx
index 057f53eb49f..b82edb88a61 100644
--- a/apps/portal/src/components/ui/tabs.tsx
+++ b/apps/portal/src/components/ui/tabs.tsx
@@ -13,7 +13,7 @@ const TabsList = React.forwardRef<
>(({ className, ...props }, ref) => (