目录
- 1、赛项背景
- 2、赛项信息
- 3、报名链接
- 4、赛题一:开发者原创声明(DCO)应用开发
- 赛题要求
- 目标
- 核心功能
- 5、赛题二:基于 OpenHarmony 的开源社区应用开发
- 简介
- 赛题要求
- 6、参赛作品提交
- 初赛阶段
- 决赛阶段
- 7、参赛作品提交方式
1、赛项背景
AtomGit 是开放原子开源基金会旗下的开源协作平台,自成立以来,一直致力于推动开源生态的健康发展与知识产权保护。
随着开源文化的普及和平台的不断发展,AtomGit开源生态应用开发赛旨在通过开源大赛的形式吸引更多开发者深入了解开源、积极参与开源,并通过技术创新为开源社区贡献力量。
本次大赛将围绕两个核心赛题展开,开发者通过参与赛题的形式一方面可以加深对开源中DCO原理、OpenHarmony项目开发的理解,一方面可以将自己的赛题成果应用到 AtomGit 平台,直接为开源提供服务。
2、赛项信息
AtomGit 开源生态应用开发赛共包含两个子赛题,分别为:
赛题一:开发者原创声明(DCO)应用开发,目的是通过DCO应用开发大赛,普及开源项目原创声明协议的重要性与认证原理,提升开发者对开源生态贡献的认知。鼓励开发者基于开放平台创新,开发能够直接应用于开源项目代码合并时的DCO认证应用,以技术实践助力开源社区的健康发展与知识产权保护。
赛题二:基于OpenHarmony的开源社区应用开发,目的是通过构建AtomGit开源运营专区的OpenHarmony应用,探索移动应用开发脚手架的最佳实践。参赛者需掌握OpenHarmony应用开发,创作并总结适用于初学者的应用模板。优胜作品经测试与安全加固后,将作为官方应用推广,助力OpenHarmony生态发展。
3、报名链接
报名地址:https://competition.atomgit.com/competitionInfo?id=eca0df1cde63cbdaaa93a521069d1304&utm_source=GSXQ
4、赛题一:开发者原创声明(DCO)应用开发
赛题要求
参赛者需基于开放平台开发一款能够直接应用于开源项目代码合并时的DCO认证应用。该应用应能够自动检测并验证代码的原创性,确保合并到项目中的代码符合DCO协议要求。同时,应用还需具备良好的用户体验和可扩展性,以适应不同开源项目的需求。
目标
实现AtomGit代码平台的DCO检查应用,用于自动检查代码提交是否符合DCO规范,并提供相应的反馈和处理机制。
参考文档
核心功能
DCO提交检查
-
检查每个commit信息中是否包含有效的Signed-off-by行
-
验证签名格式是否符合规范: Signed-off-by: Name email@example.com
-
确保签名者邮箱与提交者邮箱匹配
Webhook处理
-
接受代码平台的事件通知
-
解析提交信息并进行DCO检查
-
返回检查结果
状态反馈
-
针对检查结果设置提交状态(成功/失败)
-
提供详细的错误信息和建议
5、赛题二:基于 OpenHarmony 的开源社区应用开发
简介
软件项目脚手架在软件开发过程中扮演着至关重要的角色。它主要具有加速开发流程、统一开发标准、简化依赖管理、支持快速原型制作、提高可扩展性和可维护性、促进团队协作、集成自动化工具、降低学习成本等作用。OpenHarmony 项目发展迅速,项目社区活跃、开发工具链高效,也有了相对丰富的软件开发脚手架,但是与Android 相比,脚手架模板还不够丰富。
赛题要求
本赛题参赛者需掌握OpenHarmony应用开发技术,创作并总结适用于初学者的应用脚手架模板。这些模板应具有良好的可复用性和扩展性,能够帮助初学者快速上手OpenHarmony应用开发。最后提交的作品需要包含脚手架模板和实际应用案例。应用脚手架模板需要包含详细的文档、设计思路和必要的接口、依赖等部分;应用案例我们建议可采用社区论坛、网站官网、博客、创新工具等场景,场景选择上要求合规合法,不能侵犯相关主体权益。注意:优胜作品将经过测试与安全加固后,作为官方应用进行推广,助力OpenHarmony生态的繁荣发展
6、参赛作品提交
以下内容适用于两个赛题。
初赛阶段
(1)作品说明文档(包括但不限于以下内容)项目概述和创新点、应用功能说明、技术架构设计、系统性能指标、项目进度规划、商业价值分析。
(2)技术文档(包括但不限于以下内容)环境配置说明、编译构建指南 、API 接口文档、数据库设计文档、部署运维手册、测试报告。
(3)源代码及相关资料(包括但不限于以下内容)完整源代码工程、数据集/测试样例、使用示例/Demo、开源许可说明、代码规范文档。
提交地址:https://atomgit.com/nutatomgit,没有权限的,可以发邮件给qhj@army16.comt申请权限。
决赛阶段
(1)材料:项目展示PPT。
(2)最终交付物(包括但不限于以下内容)完整开源项目代码、作品原型/Demo、测试验证报告、产品迭代计划、用户使用手册。
7、参赛作品提交方式
(1)参赛队伍提交作品前,需将队长在大赛官网上注册邮箱、用户名、姓名、手机号码等信息邮件发送给本赛项工作人员(联系邮箱:qhj@army16.com,邮件主题命名为:“参赛队伍名称”建仓申请),工作人员确认后为该参赛队伍在 AtomGit (上创建一个私有仓库,并将队长添加为该仓库管理员。参赛队伍完成作品后,将作品源代码及相关文档提交至该仓库即可。参赛队伍所提交作品(含初赛作品及决赛作品)命名方式为:参赛队伍名称+初赛/决赛作品+作品标题。>
(2)在作品提交周期内,参赛队伍可在不改变作品名称和主要功能的基础上多次提交。参赛队伍在所参加赛程中多次提交作品的,以其最后一次提交的作品视为其在该赛程中参与评审的参赛作品。同时在竞赛期间,如赛项组织方有需要,参赛队伍需配合补充提交其它作品相关材料。
(3)所有已提交的参赛作品和相关材料原则上不予退还。
2 参赛作品提交规范
(1)参赛作品须符合本赛项及所属赛道方向,作品名称应能体现其主要特征。
(2)参赛作品必须为原创作品,不得侵犯任何第三方的专利权、著作权、商标权及其他知识产权,且不得违反国家相关法律法规,否则将取消该作品的参赛资格。
(3)作品允许使用他人开源代码,但必须在符合该代码的开源许可基础上,注明出处,以及与作品其它代码的依赖关系,且不得使用GPL、LGPL、Mozilla协议等强约束性开源协议的其他开源代码;提交作品时,必须在分析设计文档中明确说明作品中其他开源代码的协议、作用及所占比例。
(4)作品应能正常运行并可达到预期结果。作品应与设计文档描述的功能一致,如未能实现设计文档中描述的所有功能,应注明未实现功能及其所占比例和重要程度。
(5)参赛作品的代码注释量应足够高,原则上不得低于代码量的30%。