Skip to content
On this page
字数:1.1k 字
预计:3 分钟
阅读量:17

2024 年度总结

作者:winches
更新于:2 个月前

MoeGo 工作成果

1. 富文本 Tinymce 迁移至 Lexical

服务对象:用到关于 MoeGo Agreement 模板内容的用户(Web+Mobile)

输出:自调研并实现将旧 Tinymce 编辑器迁移至 Lexical

背景:

  • 旧的 Tinymce 编辑器超过了免费额度 1000 loads,导致不可用,用户上报后发现是需要充钱了
  • 由于其离谱的收费制度,定价是 plan $80 (include 5000 loads), 超量的话 $40/1000 loads
  • 最终决定改市面上开源免费的富文本,且需要保留旧富文本的全部主要功能,避免影响到用户使用

价值:

  1. 迁移完成后每月节省 $80 + $40 * x (x >= 0)
  2. 保留旧功能的同时,用 MoeGo UI 重构了 Toolbar/Overlay 给用户更友好且统一的 UI 体验,且针对 Mobile 做了手机端的展示优化(Driving + Customers)
  3. OBC 客户端对于 Agreement 内容的样式展示是没有的,切换编辑器后自定义插件实现了对于样式的展示,为了客户有更好的体验(Customer)

复杂性:

  • 无产品,无设计,无参考,只有前组员留下来的一个draft pr(将官网的 dmeo copy 过来的 pr)和组长与我对齐的目标
  • 旧编辑器是闭源高集成,许多功能开箱即用未进行过二次开发,没有可以复用的代码和样式,因此全部功能和样式都需要自研究如何通过新编辑器实现
  • 大量自动操作需要考虑如:复制 docs 文案自动更新对应样式适配编辑器样式、复制 Link 链接自动转换为 Link 节点、复制图片自动添加为图片节点并上传到 MoeGo 服务器,自动导入/导出节点为可直接展示 HTML,为此做了大量的自定义节点/插件为功能的实现

2.DatePicker RangePicker 组件实现

组件被广泛用于 BD 预约的多个场景,因此需要支持,单选、多选、反选、范围选择多个场景,且不同场景下返回的组件提示类型也需要做调整;作为公共组件需要暴露并实现多个钩子函数、受控模式、异步加载并刷新等多个复杂场景的考虑

3. Rsbuild Http2 和 Proxy 支持

提升了 2 倍开发人员网络请求速度, e.g. 20s --> 10s

4. Vscode 插件,终端自动填写 commit,css style 自动转 tailwindcss 并支持自定义 prefix

开源项目

frontio

Website: https://frontio.ai

frontio 插件: https://www.figma.com/community/plugin/1399842477111428412/frontio-by-nextui

  1. frontio 插件负责人
  • web、figma 本地 variables、figma 插件,三端同步支持
  • 支持从 figma 本地导入 variables 解析为 frontio 变量
  • 支持 frontio 变量应用到 figma 的组件
  1. frontio-cli 负责人
  • 支持一键拉取/自动拉取 frontio 变量,并生成到本地支持 css/sass/less
  1. frontio 官网
  • dashboard tokens 组件封装,支持嵌套展示各 token 值展示
  • nextjs 15 迁移,提升构建/运行速度,引入 ssr 预渲染,提升 SEO 和速度

nextui

Website: https://www.heroui.com

  1. tailwindcss v4 support
  2. 修复 inert 在 nextjs 15 和 react 18 的表现差异问题
  3. preview code 支持折叠功能
  4. storybook 8 升级
  5. 日常 issues/feature 维护

nextui-pro

Website: https://www.heroui.pro/

  1. 新增组件 Table With Filters
  2. docs 新增 codeblock folder 功能,支持代码折叠
  3. nextjs 15 迁移

nextui-cli owner

  1. 完成 init,add,upgrade,remove,list,env,doctor 命令
  2. 支持运行时缓存
  3. 自定义命令行动态输出、box 输出
  4. 支持与 nextui 文档的自动同步,减少维护成本
  5. 支持自动发布流程

@nextui/codemod owner

  1. 支持从 nextuiheroui 的一键丝滑迁移,获得用户广泛好评,只需运行一个命令用户就可以完成迁移
    1. https://x.com/nphivu414/status/1880472747073237374

个人项目

dynamic-log

🌈 Dynamic log for your nodejs project enhance your log with color and emoji/ascii art

https://github.com/winchesHe/dynamic-log

react-components-library

Website: src/components/Calendar/Calendar.tsx

更现代化的组件库模板

csdn 链接

Made with ❤️