把任务流转、协同记录、工时沉淀、交付验收和月度结算放进同一条可追溯链路。
正式站 mayeai.com · 品牌设计 · 使用手册 · 更新日志 · Releases
快速开始 · 简体中文 · 繁體中文 · English · 日本語 · 한국어
English readers: see README.en.md. 下面截图来自正式站真实界面,由项目维护者提供,用于展示当前产品的真实视觉状态。
一句话: Giverny 是一个面向公司、兼职团队和设计服务协作场景的任务流转与结算工作台,把“需求在聊天里、工时在 Excel、文件在网盘、验收靠口头、月底手工对账”的混乱流程,收敛成一条可追溯的业务链路。
在线查看 · 为什么需要它 · 品牌设计 · 核心工作流 · 真实截图 · 本地运行
Giverny 不是又一个泛用项目管理工具。它更像一个“协同任务 + 工时证据 + 交付验收 + 月度结算”的轻量运营后台,适合需要把设计、内容、运营、外包或内部协作任务从需求到结算完整留痕的团队。
它关心的不是“任务有没有被拖到某个看板列”,而是每一项工作最终能不能回答清楚:
- 这件事是谁提的、谁对接、什么时候交付?
- 过程里做了哪些推进,上传过哪些文件?
- 实际投入了多少工时,哪些工时可以结算?
- 最终由谁验收,验收依据是什么?
- 月底给客户或公司对账时,能不能一键拿出任务、工时、文件和金额?
| 能力 | 解决的问题 |
|---|---|
| 任务流转 | 从计划中、进行中、待验收到已验收,完整记录任务状态 |
| 过程协同 | 在任务右侧记录进展、附件、时间段和动态时间轴 |
| 工时管理 | 所有统计、收入和结算只基于实际工时,不用预计时间凑数 |
| 交付验收 | 通过终审面板核对基础信息、进度、分段工时、附件和备注 |
| 月度结算 | 按结算月份汇总工时、收入、验收情况和年度趋势 |
| 客户对账 | 生成只读分享链接,让甲方只看月报、任务明细和交付文件 |
| 文件归档 | 把过程文件、验收附件和最终稿沉淀到任务生命周期里 |
| 快捷操作 | 用命令面板和键盘快捷键快速新建任务、记录进展、进入文件库或设置 |
- 公司内部设计、内容、运营、市场任务需要跨人协同和月度复盘。
- 兼职设计师或外包团队需要记录实际工时、交付文件和结算依据。
- 负责人需要按月核对“做了什么、花了多久、交付了什么、该结算多少”。
- 甲方或协作方需要一个只读页面查看月报和交付内容,而不是翻聊天记录。
Giverny 是一个用于管理设计兼职工作的运营后台。它把任务需求、设计过程、实际工时、过程文件、验收附件、月度结算和甲方只读对账链接放在同一个系统里,减少“聊天记录里找需求、表格里算工时、网盘里找文件、月底再手工做账”的反复切换。
它目前服务于正式站 mayeai.com。正式站只放真实运营数据,使用 Cloudflare D1 保存业务数据,使用 Cloudflare R2 保存上传文件。预发布测试站已经下线,后续功能完成本地验证后直接更新正式站。
Giverny 不是泛用项目管理工具。它更偏向一个“设计服务结算工作台”:围绕设计任务的生命周期,把过程、工时、文件、验收和月报串起来。
README 顶部提供 GitHub 原生多语言入口:简体中文、繁體中文、English、日本語、한국어。点击对应语言会进入独立 Markdown README 文件,而不是跳转到外部集合页。
各语言版本保留同一套核心说明:Giverny 是什么、为什么不用 Notion / 飞书 / Excel、核心工作流、关键业务规则、技术架构和发布纪律。
设计兼职工作常见的问题不是“没有任务管理工具”,而是信息被拆散在太多地方:
- 需求在微信、飞书、邮件和口头沟通里。
- 工时在临时 Excel 或聊天备注里。
- 过程文件和最终稿混在网盘或本地文件夹里。
- 甲方月底只关心“做了什么、花了多久、交付了什么、为什么要结算这笔钱”。
- 设计师自己又需要留痕:什么时候接的需求,什么时候改过,哪个文件是最终验收依据。
Giverny 的目标是把这些分散信息收敛成一条可追溯链路:
任务需求 → 过程进展 → 时间记录 → 文件归档 → 交付验收 → 月度结算 → 甲方只读对账
| 角色 | 主要诉求 | Giverny 提供什么 |
|---|---|---|
| 兼职设计师 | 清楚记录每项需求、过程修改、实际工时和验收文件 | 任务详情、进展时间轴、分段工时、验收附件和月度统计 |
| 设计服务负责人 | 按月核对工作量、收入、文件和结算状态 | 工作台、收入统计、文件库、月报和 PDF |
| 甲方 / 协作方 | 只看最终月报、任务明细和交付文件,不进入后台 | /share/:token 只读链接 |
| 接手开发者 / AI 编码助手 | 快速理解代码结构、业务规则和发布纪律 | AGENTS.md、docs/、handoff/、Releases |
- 在当前月份新建任务,填写任务名称、设计类型、需求、预计开始和预计交付。
- 接受任务后在右侧“进展”面板记录过程,例如“已确认尺寸,正在出草图”。
- 需要记录实际投入时,添加时间段,例如
09:00 - 10:30 初稿。 - 上传过程附件或最终输出文件。
- 到交付时展开“交付验收”,核对基础信息、进度、工时、附件和备注。
- 确认验收后,任务计入本月工时、收入和月报。
- 新建任务时打开“补录”。
- 任务日期仍填写真实发生时间,例如 5 月 20 日。
- 结算月份选择需要计入的月份,例如 2026 年 6 月。
- 甲方看到“补录”标记后,就能理解这条任务为什么出现在本月结算中。
- 补录是公开解释信息,不能做成管理员专属棕色信息。
- 状态保持“待验收”。
- 在任务右侧补充实际工时、交付附件和验收备注。
- 点击“去验收”打开终审弹窗。
- 确认后状态变为“已验收”,进度自动到 100%,工时锁定并进入结算。
- 管理员在“月报 / 结算”里锁定月度数据。
- 生成只读分享链接。
- 甲方通过链接查看本月任务、工时、交付文件和结算金额。
- 甲方页面不显示后台编辑入口,也不能删除、修改或验收任务。
- 新建任务:记录任务名称、设计类型、需求说明、预计开始、预计交付、对接人和结算月份。
- 过程推进:在任务右侧“进展”面板记录进展、上传过程附件、追加时间段、维护状态和整体进度。
- 工时沉淀:所有统计以“实际工时”为准;预计开始时间和预计交付时间只用于排期参考,不参与数据分析、工时计算或结算。
- 交付验收:展开交付验收面板,核对基础信息、进度、分段工时、验收附件和备注;确认后状态变为“已验收”,进度锁定为 100%,工时计入结算。
- 月度结算:按结算月份汇总工时、收入、验收情况和年度趋势,生成只读甲方链接和 PDF。
这些截图来自正式站真实页面,不是重新绘制的示意图。截图由项目维护者提供,用于展示当前工作台、任务进展和收入统计的真实布局、组件密度、状态样式和整体视觉。
工作台是每个月的运营总览,核心问题是:“这个月做了多少、能结算多少、哪些还没验收?”
它展示:
- 本月总工时:本月任务实际投入工时。
- 计费工时:已验收或符合结算口径的工时。
- 预计收入:按设置中的时薪计算。
- 验收情况:已验收 / 总任务数,以及待验收数量。
- 逾期提醒:把预计交付已过期的任务集中提示。
- 任务明细:按状态筛选本月任务。
- 本月洞察:基于实际工时生成设计类型分布和周趋势。
- 年度统计:按月汇总全年工时与收入。
关键口径:工作台所有统计都基于 settlement_month 和实际工时,不使用预计开始 / 预计交付参与结算。
任务导航负责日常维护任务。左侧是列表或日历,右侧是选中任务的详情。
列表侧:
- 支持“全部 / 计划中 / 进行中 / 挂起 / 待验收 / 已验收 / 终止”筛选。
- 展示任务名、需求摘要、对接人、交付时间、工时和状态。
- 补录任务会显示公开“补录”标签。
- 管理员可通过右键菜单查看详情、变更状态、复制任务名、复制甲方分享链接、作废或恢复任务。
右侧信息页:
- 展示任务名称、设计类型、预计开始、预计交付、结算月份、需求人、对接人、验收人和任务需求。
- 预计开始 / 预计交付只用于排期,不参与统计和结算。
- 只给管理员看的内部信息使用棕色
admin-only-data。
右侧进展页:
- 过程记录:记录“现在做到哪一步”。
- 进展附件:上传过程文件或沟通附件。
- 时间记录:添加分段工时,例如初稿、终稿、修改。
- 整体进展:以 10% 档位调整,先进入未保存草稿,确认后才写入时间轴。
- 动态时间轴:记录任务状态、进度、附件、排期等变更。
- 交付验收:项目收尾时展开,进入终审确认。
验收是任务从“过程”进入“结算”的边界。终审弹窗用于让用户逐项核对:
- 基础信息:任务名称、设计类型、对接人、预计开始、预计交付、任务需求。
- 进度:显示当前完成百分比;确认验收后自动设置为 100%。
- 分段工时:可以核对或修改每段时间,最终得到实际工时合计。
- 验收附件:上传验收证明文件或最终交付文件。
- 验收备注:记录补充说明。
确认验收后:
- 状态变为“已验收”。
- 实际工时锁定进入结算。
- 进度变为 100%。
- 本项目结束,并计入工作台、收入、年度统计和月报。
文件库不是独立网盘,而是任务生命周期的文件归档视图。文件来源包括:
- 任务过程文件。
- 进展附件。
- 验收附件。
- 最终稿。
文件会按任务和项目归档,支持预览、打开源文件、下载、重命名、添加标签和删除误传文件。
删除规则:
- 只用于清理误传、重复上传或无价值临时文件。
- 删除必须使用站内二次确认。
- 删除会清理 D1 附件记录、R2 源文件和预览图。
- 删除动作写入审计日志。
收入页用于查看收入趋势和税后估算。月报用于对账和分享。
月报会读取锁定月份的数据,生成只读链接。甲方通过链接可以看到:
- 月度任务汇总。
- 任务明细。
- 工时和结算金额。
- 交付文件。
- PDF 导出内容。
甲方链接是只读的,不提供任何管理操作。
设置页管理平台参数:
- 口令管理:生成和管理访问口令。
- 设计类型:维护设计类型大类和子类。
- 时薪与计税方式:影响收入估算。
- PDF 抬头与服务公司名称:影响结算回单展示。
- 账号安全:修改管理员密码。
- 系统信息:查看版本、Cloudflare 绑定和备份入口。
| 能力 | 管理员 | 访问口令用户 | 甲方分享链接 |
|---|---|---|---|
| 查看工作台 | 是 | 是 | 否 |
| 新建 / 编辑任务 | 是 | 受限或否,按当前口令权限 | 否 |
| 删除任务动态 | 是 | 否 | 否 |
| 上传 / 删除文件 | 是 | 受限 | 否 |
| 确认验收 | 是 | 否 | 否 |
| 生成访问口令 | 是 | 否 | 否 |
| 查看管理员专属时间信息 | 是 | 否 | 否 |
| 查看月报和交付文件 | 是 | 是 | 只读 |
视觉规则:
- 管理员专属信息使用棕色
admin-only-data。 - 补录是公开解释标记,使用绿色公开提示样式。
- 甲方只读页面不显示后台按钮、删除入口、内部时间和管理状态。
任务归属月份只看 settlement_month。这意味着:
- 普通任务默认归属顶部当前选择的月份。
- 补录任务可以把真实发生日期和结算月份分开。
- 工作台、任务列表、收入统计、月报都按
settlement_month统计。
实际工时来自:
- 分段时间记录汇总。
- 验收时确认的实际工时。
- 已验收任务锁定后的工时。
实际工时会参与:
- 本月洞察。
- 收入估算。
- 月报。
- 年度统计。
- 结算 PDF。
预计开始时间和预计交付时间只用于排期与提醒:
- 可以用于判断临期 / 逾期。
- 可以帮助任务排序和日历查看。
- 不参与工时统计。
- 不参与收入计算。
- 不参与结算月份兜底。
上传过程文件 → 自动进入文件库 → 标记用途 / 标签 → 验收附件或最终稿 → 月报只读分享 → 长期保留或人工清理
当前没有自动定期清理机制。原因是历史附件可能被月报、甲方分享页、复盘或返修继续引用。正式运营阶段建议优先“归档”而不是直接删除。
推荐清理策略:
- 月报锁定后再清理。
- 最终稿、验收附件、合同或结算相关文件优先保留。
- 重复上传、误传文件可以删除。
- 大型过程源文件后续可增加“待归档 / 待删除 / 最终清理”三段式机制。
| 层级 | 技术 | 说明 |
|---|---|---|
| 前端 | React 19、TypeScript、Vite | 后台主应用和甲方分享页 |
| 样式 | src/App.css + src/styles/ |
单一入口、按业务域拆分,颜色和布局规则见 docs/DESIGN.md |
| 后端 | Cloudflare Worker | API、鉴权、AI 助手、月报和静态资源路由 |
| 数据库 | Cloudflare D1 | 任务、进展、附件、月报、设置、审计日志 |
| 文件存储 | Cloudflare R2 | 原始文件、预览图、交付附件 |
| 静态资源 | Workers Static Assets | 前端构建产物 |
| 部署 | Wrangler | 正式域名 mayeai.com |
| 文件 | 用途 |
|---|---|
src/router.tsx |
全站声明式路由、重定向与公开页懒加载边界 |
src/App.tsx |
后台应用外壳、业务编排与按路由组合视图 |
src/App.css / src/styles/ |
全站样式入口和业务域视觉规则 |
src/SharedReport.tsx |
甲方只读分享页 |
src/worker.ts |
Cloudflare Worker API 和鉴权 |
src/lib/api.ts |
前端 API client |
src/types/domain.ts |
任务、文件、报表等领域类型 |
src/config/appConfig.ts |
版本号、默认时薪、设计类型等配置 |
db/schema.sql |
完整 D1 schema |
db/migrations/ |
历史迁移 |
npm install
npm run dev默认本地地址:
http://127.0.0.1:5173/
常用检查:
npm run lint
npm run build部署前请阅读 docs/DEPLOYMENT.md。当前项目不再维护 staging 站,完成本地验证后直接部署正式站。
env -u ALL_PROXY -u HTTPS_PROXY -u HTTP_PROXY -u all_proxy -u https_proxy -u http_proxy npm run deploy:worker生产资源:
- Worker:
designer-worklog - D1:
designer-worklog-db - R2:
designer-worklog-uploads - 域名:
mayeai.com/www.mayeai.com
正式更新必须完成:
- 更新版本号:
src/config/appConfig.ts、package.json、package-lock.json。 - 更新
CHANGELOG.md,必要时更新使用手册.md和相关 docs。 - 运行
npm run lint和npm run build。 - 部署正式站并验证线上资源版本。
git commit、git push。- 创建并推送 tag,例如
v0.10.69。 - 创建 GitHub Release,Release notes 按“大更新 → 小更新”排序。
- UI / 交互明显变化时,Release 需要上传截图或图示资产。
- 使用手册:日常使用和运营说明。
- 更新日志:从
v0.10.0开始的版本记录。 - 设计规范:UI 视觉层级、颜色和组件规则。
- 交互优化审计:交互流程和操作路径规范。
- 运营规范:排序、文件清理、发布和数据安全规则。
- AI 工时建议:复杂度画像、历史样本、工时拆分和持续校准口径。
- 项目结构:目录、模块和关键入口。
- 版本规范:版本号、Release 和发布纪律。
- 部署说明:Cloudflare 正式站部署流程。
- 交接文档:下一位开发者或 AI 接手前必读。
这些工具能记录信息,但很难把“任务进展、实际工时、附件、验收、结算、甲方只读链接”稳定串成一条可审计链路。Giverny 的价值在于围绕设计服务结算做专门约束。
任务会影响工时、收入、月报和历史对账。直接删除会破坏历史数据。异常任务应使用“挂起”“终止”或“作废”来保留解释。
预计时间是计划,不是投入。结算必须基于实际工时和验收状态。预计开始 / 预计交付只用于提醒、排序和排期参考。
补录解释了“这条任务为什么出现在本月结算里”。如果隐藏,甲方可能会认为本月凭空多了一条需求。
棕色是后台内部信息标记。管理员看到棕色就知道这类信息不会出现在普通成员、甲方预览或公开只读链接里。



