diff --git a/docs/pages/introduction.mdx b/docs/pages/introduction.mdx new file mode 100644 index 0000000..d78c911 --- /dev/null +++ b/docs/pages/introduction.mdx @@ -0,0 +1,57 @@ +# What is ZeroDev? + +ZeroDev is an expressive developer toolkit for building next-generation on-chain applications. We provide the modular infrastructure and SDKs required to create seamless, automated, and chain-abstracted experiences—without forcing your team to build or maintain the underlying protocol plumbing. + +ZeroDev provides two core pillars that work together: + +* Managed Infrastructure Layer: A production-ready stack including bundlers, gas sponsorship (paymasters), and the Kernel—the industry’s most expressive and widely deployed modular smart account. +* Chain Abstraction & Connectivity: Tools like Smart Routing Address (SRA) that enable 1-click funding and execution across the entire multichain ecosystem. + +## The Integration Problem + +Standards define the protocol. They don’t give you the stack. + +To ship a feature as simple as sponsored gas, you need a smart account contract, a sponsorship service, a transaction relayer, a policy engine to control spending, and an SDK to connect it all to your frontend. In a multichain world, this complexity multiplies as you move liquidity between fragmented networks. + +ZeroDev assembles this stack and operates it as a service. Kernel is your account layer: modular, audited, and highly expressive. + +* Infrastructure (Bundlers/Paymasters) runs across 75+ chains with Enterprise SLAs. +* Smart Routing Address (SRA) acts as your connectivity layer, allowing users to fund accounts from any source—CEXs, fiat on-ramps, or other chains—directly to their destination. + +## Build or Buy? + +Building ERC-4337 infrastructure in-house is possible. It requires engineers who understand the EntryPoint contract, UserOperation lifecycle, paymaster validation rules, and bundler behavior under load—a specialized intersection of protocol knowledge and infrastructure engineering. Once built, it requires ongoing maintenance as the standard evolves and as you add chains. + +ZeroDev is the buy answer for teams that want smart account capabilities without a dedicated protocol engineering function. The Kernel contract is open source and extensively audited. The infrastructure is shared across production deployments, which means reliability is a product priority rather than a per-customer concern. Enterprise SLAs and support contracts are available for teams that need them. + +For early-stage companies, adopting ZeroDev means shipping smart wallet features in days instead of months. For larger teams, it means redirecting protocol engineering capacity toward differentiated product work. + +## How Will ZeroDev Improve My Product? + +ZeroDev enables four user-facing improvements that have the highest impact on conversion and retention: + +No gas friction. Sponsor transactions for your users so they never need to hold ETH. This eliminates the single biggest drop-off point for new users arriving from non-crypto contexts. You configure spending limits and eligibility rules through a dashboard; no contract changes required. + +Familiar authentication. Let users create wallets with passkeys (Face ID/Touch ID) or social login (Google, email, and others), with no seed phrases or browser extensions. Users get self-custodial accounts through flows that feel like standard web authentication. + +One-click flows. Batch multiple onchain operations into a single user confirmation. + +Approve-and-swap, mint-and-list, stake-and-delegate—interactions that currently require two or more transactions become one. This has a direct effect on completion rates for any multi-step flow. + +Persistent sessions. Issue-scoped, time-bounded permissions (session keys) so repeat users don’t confirm every action. The user approves a session once; subsequent actions execute silently within the authorized scope. + +Remove the bridge & swap hurdle. With Smart Routing, users get a unified balance and a single deposit address that works across the entire ecosystem. + +Each of these maps to a ZeroDev feature with documented integration time. None of them requires changes to your existing contract architecture. + +## SDKs + +ZeroDev provides three SDKs, each calibrated to a different integration depth: + +* @zerodev/wallet: Wagmi connectors and [EIP-1193](https://eips.ethereum.org/EIPS/eip-1193) providers. If your frontend already uses Wagmi, this is the lowest-friction integration path. Drop in a connector, configure gas sponsorship through the dashboard, and you have smart wallet features without touching your account logic. This is the right starting point for DApp teams adding smart wallet support. +* @zerodev/core: The full-featured SDK for teams building embedded wallets or needing fine-grained control over account creation, session management, and signing. Supports all major auth providers (Privy, Magic, Dynamic, Web3Auth, Fireblocks, Capsule, and others) as plug-in signers. +* @zerodev/waas: A React SDK built on @zerodev/core, providing hooks for wallet state, transaction management, session handling, and chain switching. For React-native wallet products, this is the fastest path to full feature coverage. + +Infrastructure concerns—bundler uptime, paymaster balance management, chain support—are handled by ZeroDev. Your team owns the integration; ZeroDev owns the ops. + +For teams evaluating integration scope before committing: each SDK has a working quickstart that covers the full round-trip (account creation, sponsored transaction, session key issuance) in under 50 lines of code. diff --git a/package-lock.json b/package-lock.json index 514b74c..5d1f588 100644 --- a/package-lock.json +++ b/package-lock.json @@ -45,6 +45,7 @@ "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.28.5.tgz", "integrity": "sha512-e7jT4DxYvIDLk1ZHmU/m/mB19rex9sv0c2ftBtjSBv+kVM/902eh0fINUzD7UwLLNR+jU585GxUJ8/EBfAM5fw==", "license": "MIT", + "peer": true, "dependencies": { "@babel/code-frame": "^7.27.1", "@babel/generator": "^7.28.5", @@ -2510,6 +2511,7 @@ "resolved": "https://registry.npmjs.org/@types/react/-/react-19.2.2.tgz", "integrity": "sha512-6mDvHUFSjyT2B2yeNx2nUgMxh9LtOWvkhIU3uePn2I2oyNymUAX1NIsdgviM4CH+JSrp2D2hsMvJOkxY+0wNRA==", "license": "MIT", + "peer": true, "dependencies": { "csstype": "^3.0.2" } @@ -2650,6 +2652,7 @@ "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", "license": "MIT", + "peer": true, "bin": { "acorn": "bin/acorn" }, @@ -2848,6 +2851,7 @@ } ], "license": "MIT", + "peer": true, "dependencies": { "baseline-browser-mapping": "^2.8.19", "caniuse-lite": "^1.0.30001751", @@ -4096,6 +4100,7 @@ "resolved": "https://registry.npmjs.org/hono/-/hono-4.10.3.tgz", "integrity": "sha512-2LOYWUbnhdxdL8MNbNg9XZig6k+cZXm5IjHn2Aviv7honhBMOHb+jxrKIeJRZJRmn+htUCKhaicxwXuUDlchRA==", "license": "MIT", + "peer": true, "engines": { "node": ">=16.9.0" } @@ -6198,6 +6203,7 @@ } ], "license": "MIT", + "peer": true, "dependencies": { "nanoid": "^3.3.11", "picocolors": "^1.1.1", @@ -6273,6 +6279,7 @@ "resolved": "https://registry.npmjs.org/react/-/react-19.2.0.tgz", "integrity": "sha512-tmbWg6W31tQLeB5cdIBOicJDJRR2KzXsV7uSK9iNfLWQ5bIZfxuPEHp7M8wiHyHnn0DD1i7w3Zmin0FtkrwoCQ==", "license": "MIT", + "peer": true, "engines": { "node": ">=0.10.0" } @@ -6282,6 +6289,7 @@ "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.2.0.tgz", "integrity": "sha512-UlbRu4cAiGaIewkPyiRGJk0imDN2T3JjieT6spoL2UeSf5od4n5LB/mQ4ejmxhCFT1tYe8IvaFulzynWovsEFQ==", "license": "MIT", + "peer": true, "dependencies": { "scheduler": "^0.27.0" }, @@ -6740,6 +6748,7 @@ "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.52.5.tgz", "integrity": "sha512-3GuObel8h7Kqdjt0gxkEzaifHTqLVW56Y/bjN7PSQtkKr0w3V/QYSdt6QWYtd7A1xUtYQigtdUfgj1RvWVtorw==", "license": "MIT", + "peer": true, "dependencies": { "@types/estree": "1.0.8" }, @@ -7222,6 +7231,7 @@ "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", "license": "Apache-2.0", + "peer": true, "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -7528,6 +7538,7 @@ "resolved": "https://registry.npmjs.org/vite/-/vite-6.4.1.tgz", "integrity": "sha512-+Oxm7q9hDoLMyJOYfUYBuHQo+dkAloi33apOPP56pzj+vsdJDzr+j1NISE5pyaAuKL4A3UD34qd0lx5+kfKp2g==", "license": "MIT", + "peer": true, "dependencies": { "esbuild": "^0.25.0", "fdir": "^6.4.4", diff --git a/vocs.config.tsx b/vocs.config.tsx index fa7ff51..9e1381b 100644 --- a/vocs.config.tsx +++ b/vocs.config.tsx @@ -90,7 +90,7 @@ export default defineConfig({ items: [ { text: "Introduction", - link: "/", + link: "/introduction", }, { text: "Quickstart",