--- sidebar_position: 4 description: 开源之夏 - 暑期 2025 mdx: format: md --- # 暑期 2025 **开源之夏 - 暑期 2025** 是**中国科学院软件研究所**发起的**开源软件供应链点亮计划**系列暑期活动,旨在鼓励高校学生积极参与开源软件的开发维护,培养和发掘更多优秀的开发者,促进优秀开源软件社区的蓬勃发展,助力开源软件供应链建设。活动联合各大开源社区,针对重要开源软件的开发与维护提供项目开发任务,并向全球高校学生开放报名。关于具体的活动规划、报名方式,请查看该活动的 [官网](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) 了本次活动,下面列出了目前我们已经发布的项目,欢迎感兴趣的同学通过 [contact@nonebot.dev](mailto:contact@nonebot.dev) 联系我们。 ## NoneBot HTML 图片渲染插件 文字与图片一直是聊天机器人的两大主流交互方式,而图片的渲染一直是用户开发应用的一大痛点。常见的方式包括 PIL 图片编辑、浏览器渲染 HTML 截图等。PIL 图片编辑依赖人工构建图片布局,容易出现自适应问题,且提升图片特效、美观程度需要极大的开发成本。浏览器渲染方案通过 HTML 与 CSS 能够轻松完成美观自适应能力强的布局,但其部署门槛较高,难以支撑较大规模调用量。而其他轻量化渲染引擎通常不具有完整 HTML/CSS 现代化标准实现,且未提供 Python Binding 直接使用。 本项目希望调研并实现一种高效、便捷的图片渲染方案。该方案需要在保障跨平台一致性、最大程度保证 HTML 与 CSS 现代化标准的前提下,低成本(资源消耗与吞吐量)将 HTML 渲染为对应图片。 **难度**:进阶 **导师**:[@MelodyKnit](https://github.com/MelodyKnit) **产出要求** - 调研 HTML/CSS 渲染引擎 - 调研 litehtml 等渲染引擎 标准支持能力与兼容性 - 基于渲染引擎实现 HTML 图片渲染插件 - 将渲染引擎通过 binding 等方式集成为 Python 模块 - 基于集成模块实现 HTML 图片渲染能力 - 编写插件使用文档 **技术要求** - 掌握 Python 及其异步编程 - 熟悉 NoneBot 框架及其插件编写 - 了解浏览器与 HTML 渲染原理 **成果仓库** - ## NB-CLI 命令行工具交互优化 NB-CLI 作为 NoneBot 生态的核心入门与管理工具,主要负责新手引导项目创建、项目运行以及插件管理几大功能。目前该脚手架工具仍存在几点缺陷: - 作为插件管理工具,由于存储数据的局限性,无法很好地展示用户项目当前安装插件状态,并进行卸载等操作; - 当前插件管理高度依赖云端 registry 提供插件信息,在离线情况下完全无法使用; - 由于插件信息繁多,工具未能向用户展示充分的信息,交互复杂 体验较差。 以上问题对用户使用 NB-CLI 管理项目插件造成了极大的阻碍。 本项目希望重点针对插件管理部分,重构工具插件管理模块,完善框架缺陷,并通过缓存等方式确保可用性。其次,调研同类工具方案与 TUI 等相关技术,优化信息展示能力、用户交互方式,提升工具整体交互体验。 **相关链接** - https://github.com/nonebot/nb-cli/issues/138 - https://github.com/nonebot/nb-cli/issues/140 **难度**:基础 **导师**:[@yanyongyu](https://github.com/yanyongyu) **产出要求** - 重构 NB-CLI 插件管理模块 - 优化项目插件信息存储方式,支持列出、卸载插件等操作 - 通过缓存 registry 数据等方式确保离线场景的可用性 - 提升 NB-CLI 交互体验 - 调研同类工具方案与 TUI 等相关技术 - 优化 registry 多字段信息展示能力 - 基于 TUI 等技术优化用户交互方式,提升整体交互体验 **技术要求** - 熟练掌握 Python 及其异步编程 - 熟悉 NoneBot 框架与 NB-CLI 使用方法 - 了解 TUI 等终端交互技术 **成果仓库** -