Version: 2.0.0

暑期 2022

开源之夏 - 暑期 2022 是由开源软件供应链点亮计划发起、由中国科学院软件研究所openEuler 社区主办的一项面向高校学生的暑期活动,类似 Google Summer of Code(GSoC),旨在鼓励在校学生积极参与开源软件的开发维护,促进优秀开源软件社区的蓬勃发展。关于具体的活动规划、报名方式,请查看该活动的 官网帮助文档

NoneBot 社区有幸作为开源社区 参与 了本次活动,下面列出了目前我们已经发布的项目,欢迎感兴趣的同学加入 QQ 群 737131827 或通过 contact@nonebot.dev 联系我们。

NoneBot2 命令行 CLI 交互体验升级

NoneBot2 为用户提供了命令行脚手架 ──nb-cli,辅助用户更好地上手项目以及进行开发。nb-cli 主要包括:创建项目、运行项目、安装与卸载插件、部署项目等功能。随着 NoneBot2 Beta 版本的发布,脚手架功能存在一定的定位不明确、功能体验不佳。本项目旨在重新设计 nb-cli 功能框架,完善功能,优化用户体验。

难度:进阶

导师@yanyongyu

产出要求

  • 设计 nb-cli 功能框架
    • 明确各功能模块
    • 设计用户交互模式
  • 完成 nb-cli 主要功能代码
    • 项目管理
    • 插件管理
    • 其它
  • 同步更新使用文档

技术要求

  • 熟悉 Python 命令行交互代码编写
  • 熟悉 NoneBot2 框架功能
  • 熟悉 NoneBot2 项目组织方式

成果仓库

NoneBot2 命令行即时交互通信设计与实现

NoneBot2 在早期提供了基于网页的 nonebot-plugin-test 插件,无需平台适配接入即可对机器人进行测试,方便了开发者直观的感受机器人文本交互功能。我们希望提供一款基于命令行的适配器/驱动器,用于无平台适配接入、可以运行机器人的场景进行功能体验或测试。

难度:进阶

导师@mnixry

产出要求

  • 设计命令行与 NoneBot2 通信模式
    • 直接调用/HTTP/WebSocket
  • 设计命令行交互界面
  • 实现相应适配器/驱动器
  • 同步更新使用说明文档

技术要求

  • 熟悉 Python 命令行交互代码编写
  • 熟悉 NoneBot2 框架功能
  • 熟悉 NoneBot2 项目组织方式

成果仓库

NoneBot2 用户上手与深入教程设计

NoneBot2 为用户提供了详细的文档介绍,辅助用户更好的上手项目以及进行开发。文档分为基础与进阶两个部分。基础部分帮助新用户快速上手开发,主要包括:安装 NoneBot2、使用脚手架、创建配置项目、使用适配器、加载插件、定义消息事件、处理消息事件、调用平台 API 等。进阶部分向已经熟悉开发流程的用户介绍更多高级技巧,主要包括:NoneBot2 工作原理、定时任务、权限控制、钩子函数、跨插件访问、单元测试、发布插件等。目前文档对于用户而言过于费解,导致用户难以理解 NoneBot2 开发。本项目旨在优化文档内容,使其更加通俗易懂,不让文档成为用户上手的阻碍,同时完善进阶内容,让有更复杂需求的用户,同样能从文档中受益。

相关 issue:

难度:进阶

导师@SK-415

产出要求

  • 文档通俗易懂
    • 附有适当的图片指引(如 asciinema)
  • 内容完整,由浅入深
  • 适当的界面美化,合理分配布局

技术要求

  • 熟悉文档结构组织与语言表达
  • 熟悉 NoneBot2 框架功能
  • 熟悉 NoneBot2 项目组织方式

成果仓库