兼容矩阵

覆盖全部八个 SoarStarter 模板的唯一结构化能力矩阵。

此矩阵由 Hub 中受类型检查的兼容数据生成,并由文档测试验证。它描述当前 v1 平台边界;支持 Unified 不代表所有平台能力完全相同。

模板Unified 角色部署方式认证Session 存储核心数据订阅通知限制
Next.js服务端宿主Standalone + UnifiedBetter Auth:邮箱密码与已配置的 Web OAuth服务端数据库 Session;安全 Web CookieProfile、Todo、预签名上传、账户删除Creem 或 Stripe;RevenueCat Webhook 桥接APNs 与 FCM Token 注册;APNs 测试端点冻结的 Soar App API v1 契约宿主实现
Nuxt服务端宿主Standalone + UnifiedBetter Auth:邮箱密码与已配置的 Web OAuth服务端数据库 Session;安全 Web CookieProfile、Todo、预签名上传、账户删除Web 支付;RevenueCat Webhook 桥接APNs 与 FCM Token 注册;APNs 测试端点契约兼容宿主;框架内部实现与 Next.js 不同
TanStack Start服务端宿主Standalone + UnifiedBetter Auth:邮箱密码与已配置的 Web OAuth服务端数据库 Session;安全 Web CookieProfile、Todo、预签名上传、账户删除Web 支付;RevenueCat Webhook 桥接APNs 与 FCM Token 注册;APNs 测试端点契约兼容宿主;框架内部实现与 Next.js 不同
Swift客户端Standalone + Unified邮箱密码与 OTP;原生 Apple 和 GoogleiOS KeychainProfile、Todo、上传、账户删除RevenueCat / App Store 与共享 Web 权益APNs 注册与当前用户测试推送仅 iOS;原生 OAuth audience 必须匹配当前宿主部署
Kotlin客户端Standalone + Unified邮箱密码与 OTP;Google Credential ManagerAndroid Keystore 安全存储Profile、Todo、上传、账户删除RevenueCat / Google Play 与共享 Web 权益FCM Token 注册;Unified 测试推送不可用无 Apple 登录;冻结的 v1 test-push 仅支持 APNs
Expo客户端Standalone + Unified邮箱密码与 OTP;iOS 支持 Apple,原生端支持 GoogleiOS 与 Android 使用 Expo SecureStoreProfile、Todo、上传、账户删除RevenueCat / App Store / Google Play 与 Web 权益APNs/FCM 注册;Unified 测试推送仅限 iOSUnified 仅支持原生端;Expo Web 仅支持 Standalone 与邮箱认证
Electron客户端Standalone + Unified邮箱密码与 OTP;不支持社交 OAuth仅主进程可访问的加密 safeStorage 命名空间Profile、Todo、上传、账户删除Creem 支付与共享 Web 权益未实现macOS、Windows、Linux;Renderer 不接收 Bearer Token 或签名 URL
Tauri客户端Standalone + Unified邮箱密码与 OTP;不支持社交 OAuthRust 私有的系统 Keyring 命名空间Profile、Todo、上传、账户删除Creem 支付与共享 Web 权益未实现macOS、Windows、Linux;Webview 无法访问 Bearer Token 或签名 URL

请先阅读已知差异

  • Expo Web 仅支持 Standalone。Unified Expo 构建在 Web 上会明确失败,且不会回退到 Supabase。
  • Kotlin 与 Expo Android 可以注册 FCM Token,但冻结的 v1 当前用户测试推送端点仅支持 APNs。
  • Apple 与 Google 支持范围取决于原生平台及当前宿主部署的 OAuth audience 配置。
  • Electron 与 Tauri 使用不同的桌面安全存储,并让 Unified 网络层远离 Renderer/Webview。
  • Web 模板是宿主,不是 App API 客户端实现。

本页目录