// the find
privy-io/examples
Collection of Privy SDK examples and starters
Official example repo from Privy showing how to integrate their embedded wallet/auth SDK across Next.js, React, React Native (Expo), Flutter, Node.js, and vanilla JS. Useful if you're evaluating Privy or starting a new project that needs social auth + embedded crypto wallets. Covers specific integrations like Wagmi, Solana, smart wallets, Farcaster, and Telegram bots.
- Good breadth of platform coverage: web, mobile (Expo/Flutter), iOS (Swift+Auth0), Node backend, Chrome extension, and PWA — each as a self-contained starter rather than a monorepo maze
- Examples are split by feature concern (session keys, smart wallets, cross-app wallets, fiat on-ramp) which makes it easy to find the specific pattern you need rather than reverse-engineering a kitchen-sink demo
- Dependabot and Renovate configs are present across examples, so dependencies aren't silently rotting — a common problem in example repos
- The .env.example files are consistently included, which reduces the friction of getting a first run working
- Massive code duplication across examples — the same ui/ components (badge.tsx, custom-toast.tsx, header.tsx, fullscreen-loader.tsx) and sections (wallet-actions, fund-wallet, mfa, etc.) are copy-pasted verbatim into nearly every example with no shared package, making it painful to track which version has the latest patterns
- Some examples are clearly on different generations of the SDK: privy-next-fiat-onramp uses Next.js Pages Router with package-lock.json while everything else is App Router with pnpm, suggesting this one hasn't been maintained to the same standard
- No testing whatsoever — no unit tests, no e2e tests, nothing to verify that any of these examples actually build or run correctly, which matters when you're copying auth flows
- The pinata-template directory contains AI agent identity files (SOUL.md, IDENTITY.md) that look like they were accidentally committed from an unrelated tool and have nothing to do with the stated purpose of the repo