Documentation Index
Fetch the complete documentation index at: https://tech.illasoft.com/llms.txt
Use this file to discover all available pages before exploring further.
kira-family 目录里的代码不是 Kira AI 艺术平台的一部分,而是另一个由同团队维护的产品 —— Illa.sh 家庭财务管理平台(正式域名 family.illasoft.com)。目录命名是历史遗留。
与 Kira 主线关系:
- ❌ 无 API 耦合(不调 kira-be,不被 kira-be 调用)
- ✅ 共享基础设施:Supabase(独立 project)、Fly.io、PostHog、部分 infisical secrets
- ✅ 共享团队:同一研发团队维护
放在本文档仅为完整披露仓库内容,便于新成员了解每个子目录用途。
部署形态
| 项 | 值 |
|---|
| 平台 | Fly.io |
| 端口 | 3200 |
| 入口 | bun run dev(dev)/ next start(prod) |
| 域名 | family.illasoft.com |
技术栈
| 层 | 技术 |
|---|
| 框架 | Next.js 16 (App Router, SSR) |
| ORM | Drizzle |
| 数据库 | Supabase Postgres(独立 project) |
| 客户端状态 | TanStack React Query |
| AI | Mistral API(文本生成/分析)、OpenAI(可选) |
| 协作 | Slack Bot SDK(chat:write) |
| 邮件 | Cloudflare Email Worker(子目录单独部署) |
| PDF | jspdf + pdf-lib + html2canvas |
| 分析 | PostHog |
功能模块
- 费用管理:追踪家庭成员支出,支持银行转账备注编辑
- 发票生成:
- 按周期筛选
- 合规检查(compliance warnings with severity)
- PDF 批量导出(html2canvas + jspdf)
- 任务管理
- 邮件管理:邮件经 Cloudflare Worker 转发到固定邮箱
- 管理员后台:用户管理、数据维护
- 月度 Slack 提醒:Supabase Cron 每月 1 号 UTC 01:00 触发
/api/cron/monthly-reminder
关键业务流:月度 Slack 提醒
Supabase Cron (monthly 01:00 UTC)
↓
POST /api/cron/monthly-reminder
Headers: X-Cron-Secret: {CRON_SECRET}
↓
查询 users WHERE type = 'person'
↓
foreach user: Slack Bot DM (chat.postMessage)
配置 SQL 模板放在项目 README。
对外路由(选摘)
| Path | 用途 |
|---|
/register | 新用户注册 |
/(dashboard)/* | 主业务页面(费用/发票/任务/邮件/管理员) |
/api/cron/monthly-reminder | Supabase Cron 入口(需 CRON_SECRET) |
/api/invoices/* | 发票 CRUD |
/api/expenses/* | 费用 CRUD |
Cloudflare Email Worker 子目录
- 路径:
kira-family/email-worker/(或类似)
- 功能:接收
@illa.sh 邮件,按规则转发
- 部署:独立部署,不在 main app build 里:
bunx wrangler deploy
环境变量
# Supabase(独立 project)
NEXT_PUBLIC_SUPABASE_URL
NEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEY
SUPABASE_SECRET_KEY
# 数据库
DATABASE_URL # Postgres 连接
# AI
MISTRAL_API_KEY
# Slack
SLACK_BOT_TOKEN # xoxb-... 需 chat:write scope
SLACK_SIGNING_SECRET # 用于请求验证
# 安全
WEBHOOK_SECRET # 内部 webhook 签名
CRON_SECRET # Supabase Cron 请求签名
# 业务配置
COMPANY_NAME
INVOICE_EMAIL_DOMAIN # illa.sh
SITE_URL # https://family.illasoft.com
开发命令
# 同步 Drizzle schema
bun run db:push
# 启动 dev
bun run dev
# 部署 Cloudflare Worker(独立)
cd email-worker && bunx wrangler deploy
Caveat
- README 为中文,代码注释混用中英
- Drizzle schema 用
db:push 同步,没有迁移文件
- Email Worker 必须独立部署,主 app build 不含
- Slack Bot 需在 workspace 手动授予
chat:write
- 与 Kira 主产品完全隔离,数据库表结构不共享
最近提交摘要
0d40e8a 合规警告类型定义
6b41edd 发票周期筛选
f263e84 合规检查重构
- 频繁的发票、费用、Slack 集成改进