talivia-group/talivia
GitHub: talivia-group/talivia
Talivia 是一个开源、可自托管的营收优先 Web 分析平台,让创始人在了解用户行为的同时直接追踪和归因客户收入。
Stars: 490 | Forks: 38
# Talivia
本仓库包含 Talivia 的专注开源版本,这是一个“营收优先”的分析
平台,可通过 [talivia.com](https://talivia.com) 访问。自托管版本结合了核心 Web
分析、Session Replay、网站协作者、共享分析、导入/导出,以及来自
Stripe、LemonSqueezy、Polar、Dodo、Yolfi 或 Manual Payment API 的客户
营收。

## 开源版与 Talivia Cloud
开源版是完整 Talivia 产品的自托管子集。如需托管
托管服务及更多集成——包括 Google Search Console、Bing Webmaster Tools、GitHub
动态,以及来自 X、Reddit、TikTok 等的社交媒体提及——请使用
[Talivia Cloud](https://talivia.com)。
## 文档
产品与集成指南可在
[官方 Talivia 文档](https://talivia.com/docs) 中查阅。
## 本地开发
环境要求:Node.js 22 LTS 或 24 LTS、pnpm 10+,以及一个空的 PostgreSQL 数据库。
```
cp .env.example .env
openssl rand -hex 32
```
将生成的值放入 `APP_SECRET` 中,然后安装、迁移并启动 Talivia:
```
pnpm install --frozen-lockfile
pnpm exec prisma migrate deploy
pnpm dev
```
打开 `http://localhost:3000` 并使用以下账号登录:
- 用户名:`admin`
- 密码:`admin`
请立即在 **Settings → Account** 下更改此初始密码。
管理员可以在同一个 Account 页面创建额外的用户名/密码账户并更改其角色。密码哈希永不显示;每个用户需自行更改自己的密码。
实用的检查命令:
```
pnpm lint
pnpm test
pnpm build
```
基线迁移仅适用于空数据库。不支持从托管的
Talivia 数据库进行迁移。
## 配置
Talivia 有两个必填设置和一个可选集成:
| 变量 | 必填 | 用途 |
| --- | --- | --- |
| `DATABASE_URL` | 是 | PostgreSQL 数据库的连接字符串。 |
| `APP_SECRET` | 是 | 至少 32 字节的随机值;用于对 session 进行签名并加密已保存的 provider 凭据。 |
| `COINGECKO_API_KEY` | 否 | 启用加密货币汇率换算。 |
当 CoinGecko 未配置或暂时不可用时,应用程序仍可使用。
## 首次设置
1. 在 Talivia 中创建一个网站。
2. 将其 tracking snippet 复制到您的网站中。
3. 确认仪表板上显示了一次访问。
4. 可选择在网站设置中启用 Session Replay。
5. 在 **Website settings → Payments** 下连接客户营收。
支持的营收输入包括 Stripe、LemonSqueezy、Polar、Dodo、Yolfi 和 Manual Payment
API。订阅生命周期、退款、争议以及首次/末次触点归因均会被保留。
Payment-provider webhook URL 是根据传入请求的源生成的。当 Talivia 运行
在反向代理之后时,请转发原始的 `Host` 和 `X-Forwarded-Proto` 标头。
## Docker
环境要求:带有 Docker Compose 的 Docker Engine。
```
cp .env.example .env
openssl rand -hex 32
```
将生成的值放入 `APP_SECRET` 中,然后启动 Talivia:
```
docker compose up --build -d
docker compose ps
```
打开 `http://localhost:3000` 并立即更改初始的 `admin` 密码。容器
会在启动应用程序之前自动应用 OSS 数据库迁移。
## 备份与升级
在升级之前,请备份 PostgreSQL 数据库以及任何特定于部署的存储。对于
Compose 安装,请使用以下命令创建逻辑数据库备份:
```
docker compose exec -T postgres pg_dump -U talivia -d talivia_oss > talivia-backup.sql
```
未来的版本会在 `prisma/migrations` 下添加有序的 migration。使用
`pnpm exec prisma migrate deploy` 应用它们;官方容器会在启动期间执行此操作。切勿编辑
已经应用到持久化数据库的 migration。
## 安全与贡献
请参阅 [SECURITY.md](SECURITY.md) 了解漏洞报告和部署指南,并参阅
[CONTRIBUTING.md](CONTRIBUTING.md) 了解开发工作流程。
Talivia 采用 [MIT License](LICENSE) 授权。
标签:GNU通用公共许可证, MITM代理, Node.js, PostgreSQL, 收入归因, 测试用例, 版权保护, 用户行为分析, 网站分析, 自动化攻击, 自托管, 请求拦截