> ## Documentation Index
> Fetch the complete documentation index at: https://supastack.dev/llms.txt
> Use this file to discover all available pages before exploring further.
> For the full documentation corpus in one file, fetch: https://supastack.dev/llms-full.txt

# 技术栈

套件背后的技术及其各自的作用。

## 开始之前

使用“文件”→“打开文件夹”在 Visual Studio Code 中打开下载的 supastack 项目，然后选择“终端”→“新建终端”。存储库根目录是包含 package.json、apps 和 packages 的文件夹。运行下面的命令并保持终端打开。如果无法识别命令，请先完成工具安装指南，然后再继续。

首先阅读平台教程。服务器是响应浏览器或电话请求的应用程序进程。 Web 读取 apps/web/.env.local，Expo 读取 apps/mobile/.env.local，数据库迁移命令读取 root .env。无数据库/仪表板演示与真实/身份验证帐户分开，需要迁移Postgres。仅电话或桌面结帐需要单独运行的 Web 后端。

[安装工具并获取代码](https://supastack.dev/zh/docs/web/before-you-start.md)

[学习命令、文件和配置](https://supastack.dev/zh/docs/web/terminal-basics.md)

[完成Web首次运行教程](https://supastack.dev/zh/docs/web/ship-in-5-minutes.md)

```
corepack pnpm --filter @supastack/web dev
```


## 应用栈

Web 应用是由共享 TypeScript 包组成的 Next.js 应用——同一套包同时驱动 Expo 移动应用。产品界面使用基于设计令牌的 CSS Modules，因此没有需要调试的运行时 CSS-in-JS，对象存储兼容 S3。以下工具都是刻意选择的默认项。


## Next.js + React

Web 应用运行于采用 App Router 的 [Next.js](https://nextjs.org) 16 与 [React](https://react.dev) 19 服务器组件之上。

- [Next.js](https://nextjs.org)
- [React](https://react.dev)


## TypeScript + Turborepo

[TypeScript](https://www.typescriptlang.org) 严格模式适用于整个 pnpm 工作区，[Turborepo](https://turborepo.com) 负责协调构建。

- [TypeScript](https://www.typescriptlang.org)
- [Turborepo](https://turborepo.com)


## Better Auth

[Better Auth](https://better-auth.com) 是身份引擎；希望统一使用 Auth.js 的团队也可选用 Auth.js 引擎。

- [Better Auth](https://better-auth.com)


## Drizzle + PostgreSQL

持久化通过 [PostgreSQL](https://www.postgresql.org) 上的 [Drizzle](https://orm.drizzle.team) ORM 实现——即每条记录所经过的 schema 与辅助方法。

- [Drizzle](https://orm.drizzle.team)
- [PostgreSQL](https://www.postgresql.org)


## 计费

默认使用 [Stripe](https://stripe.com) 计费，并附带 [Lemon Squeezy](https://www.lemonsqueezy.com) 适配器。

- [Stripe](https://stripe.com)
- [Lemon Squeezy](https://www.lemonsqueezy.com)


## Trigger.dev

后台任务运行在 [Trigger.dev](https://trigger.dev) 上。

- [Trigger.dev](https://trigger.dev)


## 事务性邮件

事务性邮件通过 [Resend](https://resend.com) 或 AWS SES 发送。

- [Resend](https://resend.com)


## Sentry + PostHog

可观测性由 [Sentry](https://sentry.io) 与 [PostHog](https://posthog.com) 提供。

- [Sentry](https://sentry.io)
- [PostHog](https://posthog.com)


## Expo

[Expo](https://expo.dev) 移动应用使用同一套 TypeScript 包，因此契约变更可同时对两个端进行类型检查。Expo 支持构建 iOS 和 Android 版本。

- [Expo](https://expo.dev)


## 共享模块

每个横切能力都位于一个带有小契约的包中:auth、db、billing、ai、jobs、email、storage、observability、config、i18n 和 api。应用程序组合它们;产品领域逻辑留在套件之外。

每个由提供商支撑的模块都包含一个 fake 或本地适配器,因此默认的测试与开发循环永远不会调用付费服务。


## 验证工具

Vitest 覆盖单元和集成行为,Playwright 覆盖浏览器流程,ESLint 加 Prettier 保持代码一致。确定性测试套件无需提供商凭据即可运行;真实提供商验收是一条单独的可选路径。

```
corepack pnpm test          # deterministic unit + integration
corepack pnpm check         # lint, types, tests, format
corepack pnpm build         # production builds
corepack pnpm test:e2e      # browser flows
```


## 下一篇

[本地安装](https://supastack.dev/zh/docs/web/local-setup.md)
