jakarabondi-web/traivr

GitHub: jakarabondi-web/traivr

Traivr 是一个连接专业培训师与 AI 公司的 AI 训练人力资源平台,解决高质量人类反馈、模型评估和红队测试等专业数据工作的人才匹配与流程管理问题。

Stars: 0 | Forks: 0

# Traivr Traivr 是一个 AI 训练人力资源平台,旨在将有资质的培训师、 主题专家 (SME) 和审核员与 AI 公司连接起来。这些公司通常需要人工反馈、模型评估、RLHF 偏好数据、红队测试以及监督微调数据。 本仓库在一个代码库中包含了四个相互关联的应用: - **营销网站** — 公共页面、注册入口 - **培训师门户** (`/trainer`) — 入职引导、市场、任务工作区、收益 - **客户门户** (`/client`) — 项目创建、质量分析、账单、数据导出 - **管理后台** (`/admin`) — 运营、质量、支付、支持、风控 有关更深入的文档,请参阅 `ARCHITECTURE.md`、`DATABASE.md`、`PERMISSIONS.md` 和 `SECURITY.md`。`ROADMAP.md` 跟踪已实现与计划中的功能。 ## 技术栈 - Next.js (App Router) + TypeScript + React - Tailwind CSS v4 + 手写的 shadcn 风格基础组件 (Radix UI) - PostgreSQL + Prisma ORM - Auth.js (NextAuth v5, credentials provider, JWT sessions, RBAC) - Zod, React Hook Form, TanStack Table/Query, Recharts, Lucide icons - Vitest, Playwright, ESLint, Prettier 邮件 (Resend) 和支付 (Stripe/Stripe Connect/Wise/PayPal) 通过 `src/lib/email` 和 `src/lib/payments` 中的小型抽象层进行集成,因此可以替换服务提供商。在未配置 API 密钥的情况下,这些功能会执行日志记录或模拟,而不是静默失败 — 有关模拟与真实功能的说明,请参阅 `SECURITY.md`。 ## 快速开始 ### 1. 安装依赖 ``` npm install ``` ### 2. 配置环境变量 ``` cp .env.example .env ``` 至少需要将 `DATABASE_URL` 设置为 PostgreSQL 连接字符串,并将 `AUTH_SECRET` 设置为随机的 32 字节值 (`openssl rand -base64 32`)。 ### 3. 设置数据库 ``` npm run db:push # sync the Prisma schema to your database (dev) npm run db:seed # load demo accounts + sample data ``` 对于长期的 schema 变更,建议使用 `npm run db:migrate` 生成迁移,而不是使用 `db:push`。 ### 4. 运行开发服务器 ``` npm run dev ``` 打开 http://localhost:3000。 ## 开发命令 | 命令 | 描述 | | --------------------- | ----------------------------------------- | | `npm run dev` | 启动开发服务器 | | `npm run build` | 生产环境构建 | | `npm run start` | 运行生产环境构建 | | `npm run lint` | ESLint | | `npm run test` | 运行单元/集成测试 (Vitest) | | `npm run test:watch` | 以 watch 模式运行 Vitest | | `npm run db:push` | 将 Prisma schema 推送到数据库 | | `npm run db:migrate` | 创建/应用 Prisma 迁移 | | `npm run db:seed` | 填充演示数据 | | `npm run db:studio` | 打开 Prisma Studio | ## 演示账号(仅限开发环境) 运行 `npm run db:seed` 后,在 `/login` 使用以下账号登录: | 邮箱 | 角色 | 密码 | | -------------------------- | ------------ | ---------------------- | | `trainer@traivr.demo` | 培训师 | `Traivr!Demo2026` | | `reviewer@traivr.demo` | 审核员 | `Traivr!Demo2026` | | `client@traivr.demo` | 客户管理员 | `Traivr!Demo2026` | | `admin@traivr.demo` | 超级管理员 | `Traivr!Demo2026` | 这些账号和密码仅存在于您本地的种子数据库中 — 绝不会作为生产环境的凭据提交到代码库。 ## 部署概述 本应用是一个标准的 Next.js 应用,可以部署到任何 Node 托管平台 (Vercel、容器等)。它需要: - 可访问的 PostgreSQL 数据库 (`DATABASE_URL`) - 为部署域名设置 `AUTH_SECRET` 和 `AUTH_URL` - 可选:为依赖这些服务的功能配置 Resend、Stripe、兼容 S3 的存储和 Redis 凭据(参见 `.env.example`) 请在部署流程中运行类似 `npm run db:migrate deploy` 的迁移命令,而不是在生产环境中使用 `db:push`。 ## 项目状态 这是一个正在积极开发的基础框架,而非最终产品。有关营销网站、培训师门户、客户门户和管理后台中已构建与计划开发的功能,请参见 `ROADMAP.md`。
标签:DFIR, 人工智能, 众包平台, 数据标注, 模型评估, 测试用例, 特征检测, 用户模式Hook绕过, 自动化攻击