用途:帮助开发者在 React 应用(Vite、CRA 等)中同时接入 Neon 认证与数据库查询,搭建完整的 Neon SDK。若使用 Next.js,应改用 neon-auth-nextjs 作为起点。
主要能力:创建类型化客户端(createClient<Database>)、通过 CLI 生成数据库类型、提供认证 UI 组件(AuthView、UserButton、账户与组织管理卡片)、条件渲染组件(SignedIn、SignedOut、AuthLoading、RedirectToSignIn)、会话 Hook(useSession)、社交登录、匿名访问、JWT 获取、身份关联,以及数据库的查询、插入、更新、删除、upsert、过滤、排序与分页。
使用方式:先安装 npm install @neondatabase/neon-js;用 npx neon-js gen-types --db-url "postgresql://user:pass@host:5432/db" --output src/database.types.ts 生成类型;在 src/client.ts 创建客户端,配置 auth.url 与 dataApi.url;在 providers.tsx 用 NeonAuthUIProvider 包裹应用;在 main.tsx 用 BrowserRouter 与 Providers 包裹 App;在 .env.local 设置 VITE_NEON_AUTH_URL 与 VITE_NEON_DATA_API_URL。样式二选一:import '@neondatabase/neon-js/ui/css' 或 Tailwind 的 @import '@neondatabase/neon-js/ui/tailwind',不可同时导入。
关键规则:适配器工厂必须调用,如 SupabaseAuthAdapter();React 适配器从子路径导入 '@neondatabase/neon-js/auth/react/adapters';查询使用 Database 泛型保证类型安全。
限制:资料未提供收费、价格与平台支持信息;匿名访问需在数据库为 anonymous 角色授权并配置 RLS 策略;OAuth 在 iframe 中使用弹窗流程,需允许弹窗。