From 78ba6ce97318a2ff24e0d716f76917766fa93a83 Mon Sep 17 00:00:00 2001 From: Ju4tCode <42488585+yanyongyu@users.noreply.github.com> Date: Mon, 22 Apr 2024 15:26:48 +0800 Subject: [PATCH] =?UTF-8?q?:memo:=20Docs:=20=E6=B7=BB=E5=8A=A0=20OSPP=2020?= =?UTF-8?q?24=20=E9=A1=B9=E7=9B=AE=E8=AF=B4=E6=98=8E=20(#2676)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- website/docs/ospp/2024.md | 103 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 103 insertions(+) create mode 100644 website/docs/ospp/2024.md diff --git a/website/docs/ospp/2024.md b/website/docs/ospp/2024.md new file mode 100644 index 000000000000..9052bfca9db0 --- /dev/null +++ b/website/docs/ospp/2024.md @@ -0,0 +1,103 @@ +--- +sidebar_position: 3 +description: 开源之夏 - 暑期 2024 +--- + +# 暑期 2024 + +**开源之夏 - 暑期 2024** 是**中国科学院软件研究所**发起的**开源软件供应链点亮计划**系列暑期活动,旨在鼓励高校学生积极参与开源软件的开发维护,促进优秀开源软件社区的蓬勃发展。活动联合各大开源社区,针对重要开源软件的开发与维护提供项目开发任务,并向全球高校学生开放报名。关于具体的活动规划、报名方式,请查看该活动的 [官网](https://summer-ospp.ac.cn/) 和 [帮助文档](https://summer-ospp.ac.cn/help/)。 + +NoneBot 社区有幸作为开源社区 [参与](https://summer-ospp.ac.cn/org/orgdetail/e1fb5b8d-125a-4138-b756-25bd32c0a31a?lang=zh) 了本次活动,下面列出了目前我们已经发布的项目,欢迎感兴趣的同学通过 联系我们。 + +## NonePress 官网组件库更新与优化 + +NoneBot 官网目前采用基于 TailwindCSS 自研的 NonePress 组件库及 Docusaurus 框架进行构建。由于相关依赖版本迭代迅速,目前官网组件库已产生了较大的版本落后。本项目希望在跟进框架新版本的基础上,对文档整体视觉体验进行重新设计,提升页面的无障碍访问性,基于 React Hydrate 特性实现完整的静态网站生成(SSG)以提升搜索引擎优化(SEO)水平。在解决以上问题的基础上,可对网页的开发以及生产构建性能做相应的优化提升,例如在生产构建使用自有的 webpack loader、替换现有的热重载逻辑以减少开发环境启动耗时等。 + +**难度**:进阶 + +**导师**:[@yanyongyu](https://github.com/yanyongyu) + +**产出要求** + +- 基于 Docusaurus v3 重构 NonePress 组件库及相关插件 + - 升级相关依赖并重新打造 Docusaurus theme(布局与组件) + - 根据需求实现/修改 Docusaurus 插件使得官网内容构建正常 + - 能够提升页面渲染性能与 MDX 相关能力 +- 升级官网采用新版组件库 + - Algolia 索引与 SEO 正常 + - 桌面端与移动端显示正常 + - 优化官网开发与生产构建体验 +- (可选)优化官网部分页面 + - 优化官网过长的 changelog + - 优化官网插件商店的展示细节 + +**技术要求** + +- 熟练掌握 TS、PostCSS、TSX、MDX等相关技术 +- 掌握 React、Docusaurus、tailwind css 等框架 +- 熟悉静态网站生成 SSG、SEO 优化与 Algolia 索引原理等 + +**成果仓库** + +- + +## NoneFlow 社区自动化工作流管理优化 + +NoneFlow 在 NoneBot 社区中承担着重要的角色,它由 NoneBot 框架基于 GitHub APP 编写而成,能够自动化的完成许多复杂流程的处理,如:用户请求提交插件到商店时进行自动化检测,并在人工审核通过后自动存储至 registry;定时自动更新 registry 内插件信息,跟进插件新版本情况等。但是,在长期的使用中发现了一些问题和不足的地方,例如:项目本身结构复杂耦合,添加新自动化流程与维护现有流程困难;目前采用了 GitHub 用户名作为插件作者名,但已有不少插件作者改名;插件存储至 registry 并定时更新,缺少统计相关信息以帮助商店更好的展示当前插件状态;插件作者想要修改插件信息时无法便捷的找到操作方式等。本项目希望针对以上问题与不足的地方进行修复与优化,提升用户体验。 + +**难度**:进阶 + +**导师**:[@uy/sun](https://github.com/he0119) + +**产出要求** + +- 重构现有工作流处理结构 + - 整合现有 Issue、Pull Request、Git 相关操作 + - 提供用户修改信息的处理方式 + - 正确处理 PR 的 Open、Close、Draft 状态 +- 修复流程中存在的问题 + - 插件作者名正确展示 + - registry 定时更新中需要插件测试环境隔离 +- 在 registry 定时更新的同时提供统计数据 + +**技术要求** + +- 掌握 GitHub APP 开发 + - 熟悉 GitHub REST API、GraphQL 等 + - 熟悉 GitHub APP 权限限制 +- 熟悉 NoneBot 框架与 Python 相关技术 +- 熟悉 Git、GitHub Action、GitHub 工作流 + +**成果仓库** + +- + +## NoneBlockly 低代码框架开发 + +经过深入分析社区反馈,我们发现部分新手因不熟悉编程概念或框架本身而遇到问题。为了解决初学者在使用面向开发者的聊天机器人框架 NoneBot 时遇到的挑战,我们计划引入 Blockly 提供低代码编程支持。通过减少常见的编码错误和降低入门门槛,使框架对初学者更加友好,从而提升用户体验并有助于 NoneBot 生态的成长。本项目将基于 Blockly 实现 NoneBot 插件的低代码编写,使得用户能够快速搭建聊天机器人。 + +**难度**:进阶 + +**导师**:[@mnixry](https://github.com/mnixry) + +**产出要求** + +- 实现 NoneBlockly 低代码开发框架 + - 能够基于 Alconna 编写跨平台插件 + - 确保插件对 Python 和 NoneBot 版本的兼容性 + - 支持对多种类型 NoneBot 事件的响应 + - 支持对 NoneBot 消息对象的便捷操作 + - 集成 localstore 文件存储、apscheduler 定时任务、网络请求等常用功能 +- 对接 NB-CLI 脚手架,通过脚手架扩展使用低代码框架 + +**技术要求** + +- 掌握 Python 与 NoneBot 框架的使用 + - 熟悉 NoneBot 插件的开发,包括事件响应与消息处理等 + - 熟悉 NoneBot 生态组件(Alconna、localstore、apscheduler等)的使用 + - 了解 NB-CLI 脚手架的扩展开发 +- 熟悉 Blockly 低代码框架的使用和开发 + +**成果仓库** + +-