资助申请 - 为 swap.cow.fi (v2) 设置国际化
摘要
AI 生成BootNode 团队申请资助,为 CoW Swap 前端 (swap.cow.fi) 实施国际化。提案包括升级 Lingui 框架、修复语言检测、添加俄语支持、集成 Crowdin 翻译管理,并详细规划了从设计、开发到部署的六个里程碑,总计 11-15 天工作量,请求 9,600 xDAI 和 8,400 $COW 的资金支持。
注:摘要由 AI 自动生成,可能与正文存在差异,仅供参考。
提案内容
AI 翻译资助项目标题
资助申请 - 为 swap.cow.fi 设置国际化
注:这是先前提案的修订版本。
作者
高级 UI 开发工程师 - Gabriel: ( https://github.com/gabitoesmiapodo )
主要联系人 - Manuel (manuel@bootnode.dev)
经验与资质
BootNode 是一家高产出的工程和产品工作室,专注于 DeFi、质押、基础设施和互操作性。我们帮助协议和构建者更快地交付产品并更智能地扩展——从零到主网及以后。
我们的专业领域与客户案例可通过**此链接**查看。
将交付此项目的团队包括:
- UI 开发工程师 - Gabriel Rodriguez Alsina (10 年以上开发经验) - https://github.com/gabitoesmiapodo
- UX/UI 设计师/开发工程师 - Tom (10 年以上设计与开发经验)
- 前端开发工程师 (具备 Redux 技能) - Fer (15 年以上开发经验) - https://github.com/fernandomg
- 项目经理 - Pablo
- 质量保证工程师 - Inaky (3 年以上测试经验)
团队完成的项目,包括设计和质量保证:
- Wormhole - 利用 Wormhole 的 NTT 技术构建的无代码多链代币启动平台,允许用户安全无缝地升级现有 ERC20 代币或创建全新的多链代币。
- Gnosis 桥接器与浏览器 - 允许用户将 DAI 和其他代币从以太坊桥接到 Gnosis 链并返回,并探索桥接交易状态(底层使用 xDAI 和 OmniBridge 协议)。
- uRamp - 无缝处理从银行 IBAN(国际银行账号)将欧元转移到任何 EVM 链上的任何 ERC20 代币及返回的端到端流程(利用 Monerium 和 Li.Fi SDK 确保流畅体验)。
- Infinex 基于理事会的治理前端(尚未上线)
- xERC20 代币启动平台
- dAppBooster - 前端启动工具包
有关上述项目的更多详细信息,请参见**此链接**。
资助描述:
本资助旨在为 swap.cow.fi 添加国际化功能,帮助提高协议在非英语市场的使用率,同时增强信任和品牌认知度。
初始实施将支持英语(当前语言)和俄语(用于测试),未来可能添加更多语言。
作为本次资助交付的成果,我们希望能增加 swap.cow.fi 上的交易数量以及新访客和回头客。
当前国际化状态及我们的技术建议:
- 语言检测。 应用程序当前未能正确检测浏览器语言,此问题将被修复。如果检测到的语言不可用,系统将默认使用英语。此外,如果用户通过语言选择器选择了其他语言,其语言偏好将被保存(类似于主题偏好的保存方式)。
- 状态管理。 当前使用 Redux 进行状态管理,并将继续使用。
- 国际化框架。 国际化当前使用 Lingui 库实现,但功能尚不完全。Lingui 是一个可靠的工具,没有明确的替换需求。切换到其他库将产生不必要的时间和资源成本。因此我们建议:
- 将 Lingui 升级到版本 5。
- 完成任何缺失的实现并解决现有的配置问题。
- 翻译键。 虽然已经实现了许多用于导出翻译键的宏,但仍有大量未处理。将对整个应用程序进行完整审查,以识别并添加缺失的键。
- 语言选择器设计。 将创建一个简约且合适的设计来实现语言选择器界面。
- 语言选择器实现。
- 语言选择器将使用当前的状态管理解决方案保存所选语言。
- 将添加一个配置选项来隐藏/显示语言选择下拉菜单。
- 当语言选择下拉菜单隐藏时,将提供一个控制台命令来切换语言。
- 翻译管理。 我们建议使用 Crowdin 处理翻译。最初将仅提供俄语翻译。
- 自动化翻译与 CI 集成 可以通过 Lingui、Crowdin 和 GitHub Actions 的组合实现。我们已在此处测试了该方法。Crowdin 自动翻译了此文件(以西班牙语文件为例)。
- 文档。 将创建指导材料,以指导未来的贡献者如何添加新的国际化文件。
资助类型:
基于里程碑
里程碑 1:设计阶段
任务:
- 为语言切换器提供设计稿(针对深色/浅色模式)
- 根据 CoW Swap 团队的反馈进行调整。
交付成果:
- 语言切换器设计稿。
成果:
- UI 设计已获批准
工作量:1 天
里程碑 2:准备阶段
任务:
- 准备对建议的国际化及翻译工具(国际化:Lingui。翻译:Crowdin)的技术评估。
- 获得 CoW Swap 团队的批准。
交付成果:
- 建议工具的技术评估文档
成果:
- 国际化及翻译工具已选定并获批准
工作量:1 天
里程碑 3:实施阶段
任务:
- 将 Lingui 升级到 v5
- 修复自动语言检测(浏览器/用户语言)。
- 使用批准的工具(Lingui)对应用程序进行国际化。调整应用程序 UI 以支持不同语言:
- 全面扫描应用程序中需要翻译的文本字符串。
- 为国际化文件生成添加宏。
- 将布局修改保持在最低限度,仅在绝对必要时调整容器宽度/高度/内边距。大多数问题应通过自动换行处理,除非文本过于拥挤。
- 生成俄语
.po文件(在 Lingui 设置和 Crowdin 项目中启用俄语,为字符串提取设置预推送 git hook)- 设置翻译流程,以便在翻译文件每次更改时通过以下组合更新翻译:git hooks + Lingui + Crowdin + GitHub Actions。
交付成果:
- 已翻译的俄语
.po文件。
成果:
- Lingui 已升级至 v5
- 应用程序能正确检测用户语言
- 如果用户语言不可用,应用程序默认使用英语
- 将自动创建一个包含更新翻译的 PR,以便在合并前进行审查。
- UI(桌面端和响应式)已针对所选语言进行适当调整
工作量:4–6 天
里程碑 4:实施阶段
任务:
- 实现语言切换器(下拉菜单)。当没有多种语言的翻译时,它应被隐藏。
- 允许使用配置变量禁用该功能(隐藏下拉菜单),或出于测试目的使用控制台命令更改语言。
- 进行内部测试。
交付成果:
- 可正常工作的语言切换器。
成果:
- 用户可以选择英语或俄语。
- 切换语言时界面会更新。
- 应用程序保存所选语言。
- 已设置 PR 供 CoW Swap 团队进行用户验收测试
工作量:3–4 天
里程碑 5:前端团队审查后的修改
任务:
- 修复问题/反馈。
- 创建一份文档,说明为新语言生成和编辑 .po 文件的流程。
交付成果:
- 包含说明的文档(如何设置翻译账户并加载翻译以获得可测试的应用程序版本)。
成果:
- 所有反馈已处理。
- 应用程序更加完善。
- 任何人都可以遵循的清晰语言添加流程。
工作量:2-3 天
里程碑 6:部署
任务:
- 部署更新后的应用程序。
- 交接会议 | - swap.cow.fi 网站已更新。
成果:
- CoW Swap 团队可以轻松添加其他语言。
工作量:1 天
时长
我们预计资助交付需要 11-15 天(2-3 周)。实际交付时间表将取决于 CoW Swap 团队的审查周期。
此提案不包括解决方案部署后的维护,因为这不是要求的一部分,但如果需要,我们很乐意提供轻度维护。
我们已准备就绪,一旦资助获批即可开始。
资金请求:
9,600 xDAI 和 8,400 $COW,其中 $COW 部分需遵守标准的 12 个月归属期(针对归属的 $COW),前提是根据标准资助流程完成并满意地审查所有剩余里程碑。
该资助将用于在 2-3 周内(根据 CoW Swap 的反馈周期,可能更长)交付上述里程碑,团队包括一名 UX/UI 设计师、一名开发工程师、一名前端开发工程师、一名质量保证工程师和一名项目经理,按需投入。
Gnosis 链地址
0x1C7645a077f2f2546bdf896eDEBE5743457462fC
条款与条件
通过提交此资助申请,我承认并同意受 CoW DAO 参与协议 和 CoW DAO 资助协议条款 的约束。