@fayz-ai/auth

中文文档
0.94.0发布于 2026/11/11MITTypeScriptES Module近 30 天下载 2万

Fayz SDK auth context — session, adapters, auth links and the login and password screens

原始使用文档
文档目录5 节
  1. What's inside
  2. Install
  3. Usage
  4. Part of the Fayz SDK
  5. Roadmap & contributing

@fayz-ai/auth

Pluggable auth for Fayz apps — one hook, swappable adapters.

npm license

Status: beta — published to npm and used across Fayz dogfood apps. Pre-1.0: minor APIs may change before 1.0.

Auth shouldn't be the thing that couples your app to a backend. @fayz-ai/auth wraps authentication behind the core AuthAdapter contract so a Fayz app reads the same whether it's running on Supabase in production or a mock adapter in tests and previews. One provider, one useAuth hook, a Zustand-backed session store — the rest is an implementation detail you can swap.

This is the auth layer for composed Fayz SaaS apps: drop in AuthProvider, pick an adapter, and every plugin gets a consistent user and session without knowing where it came from.

What's inside

  • createSupabaseAuthAdapter — production Supabase auth, typed via SupabaseAuthConfig
  • createMockAuthAdapter — deterministic auth for tests, demos, and previews (MockUser)
  • AuthProvider + useAuth — React context and hook for the current user and session
  • useAuthStore — the underlying Zustand store (AuthState, AuthStore) for advanced access
  • Screens and rules, imported by path: @fayz-ai/auth/views/AuthGate, views/LoginPage, views/SetPasswordPage, views/usePasswordSetupGate, lib/runtime (createAuthRuntime), domain/auth-config (AuthPluginOptions, LoginAmbassador), domain/password. Terms in GLOSSARY.md.

Install

npm install @fayz-ai/auth

Peer dep: react (^18 or ^19). Built on @fayz-ai/core.

Usage

import { AuthProvider, useAuth, createSupabaseAuthAdapter } from '@fayz-ai/auth'

const adapter = createSupabaseAuthAdapter({ url, anonKey })

function App() {
  return (
    <AuthProvider adapter={adapter}>
      <Dashboard />
    </AuthProvider>
  )
}

function Dashboard() {
  const { user } = useAuth()
  return <p>Hello, {user?.email}</p>
}

Part of the Fayz SDK

The auth seam between @fayz-ai/core and the multi-tenant @fayz-ai/admin layer.

Roadmap & contributing

Built and evolving in the open. See the Fayz SDK roadmap for current gaps, missing features, and good first issues.

版本与发布记录

@fayz-ai/auth 共发布 72 个版本,首次发布于 2026/06/18;过去 12 个月发布了 72 个版本。

版本发布日期距今
0.94.0latest2026/11/112 天前
0.92.02026/11/113 天前
0.90.02026/11/068 天前
0.79.02026/11/059 天前
0.78.02026/11/0410 天前
0.77.02026/10/3015 天前

其他发布通道:next → 0.9.0-next.1,canary → 0.76.0-canary.20261028153856。

关于 @fayz-ai/auth 的常见问题

@fayz-ai/auth 是什么?

Fayz SDK auth context — session, adapters, auth links and the login and password screens

如何安装 @fayz-ai/auth?

在项目目录运行 npm install @fayz-ai/auth,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:react(^18.0.0 || ^19.0.0)、zustand(^4.5.0 || ^5.0.0)、@supabase/supabase-js(^2.45.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@fayz-ai/auth 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@fayz-ai/auth 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@fayz-ai/auth 可以商用吗?

@fayz-ai/auth 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@fayz-ai/auth 的下载量有多少?

根据 npm 官方下载统计,@fayz-ai/auth 在 2026/10/15 – 2026/11/13 这 30 天内被下载 20,275 次,日均约 676 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@fayz-ai/auth 还在维护吗?

最新版本 0.94.0 发布于 2026/11/11(2 天前);至今共发布 72 个版本,其中过去 12 个月发布了 72 个;首次发布于 2026/06/18。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。