A minimal, modular WalletConnect v2 provider for browser apps. ESM only, with no @walletconnect
runtime dependency. Chain adapters, features, and UI are separate imports so unused code can stay
out of the bundle.
Documentation: lsheva.github.io/konekt
pnpm add konektimport { Provider } from "konekt";
import { ethereumMainnet } from "konekt/eip155";
const provider = await Provider.init({
projectId,
metadata: { name: "App", description: "My app", url: location.origin, icons: [] },
chains: [ethereumMainnet],
});
provider.on("display_uri", showPairingUri);
await provider.connect();The modern-browser EVM path is 14.74 kB minified and gzipped through the first encrypted message,
against 142.97 kB for the main bundle of @walletconnect/ethereum-provider@2.23.10. A matched Vite
React app first-loads 10.94 kB with Konekt, 145.74 kB with that official provider, and 721.26 kB with
AppKit (React marked external). Konekt gets there by implementing the protocol directly, using Web
Crypto before a polyfill, and keeping chains, authentication, reads, and UI behind separate entry
points. Reads go to a transport you configure rather than a default public endpoint, and the wallet
picker is your choice rather than a bundled modal.
- Why Konekt is better — the full comparison with the official provider and Reown AppKit
- Migrating from
@walletconnect/ethereum-provider
| Package | What |
|---|---|
konekt |
Provider, chain adapters, SIWE, CACAO, HTTP reads |
konekt-ui |
React wallet picker and pairing QR |
docs |
Guides and API reference |
example |
Slim wagmi 3 app |
showcase |
Capabilities lab |
size-walletconnect |
Vite size fixture: official Ethereum Provider |
size-appkit |
Vite size fixture: AppKit + ethers |
size-konekt |
Vite size fixture: Konekt |
size-konekt-ui |
Vite size fixture: Konekt + UI |
integrations |
Application-owned Solana and CosmJS bridges to copy |
Published packages are independently versioned. See RELEASING.md.
Requires Node 24 and pnpm 10.
pnpm install
pnpm dev # example app
pnpm dev:showcase
pnpm dev:docs
pnpm test
pnpm check # lint, tests, types, package and size checks
pnpm size:apps # Vite app first-load vs overall comparisonSee CONTRIBUTING.md before opening a pull request, and SECURITY.md to report a vulnerability.