cj-awesome

cj-awesome

GitCode社区仓颉三方库共建以及资源共享平台。

公告
暂无公告

README

仓颉三方库共建计划

image-20260709154041391

「仓颉开发者生态共建季」第一站 — 共建生态 学仓颉,建生态,赢未来

三方库是编程语言生态的重要组成部分——丰富的三方库生态能够大幅降低开发者的上手门槛,加速应用落地和社区繁荣。当前仓颉三方库在数量覆盖、版本适配和鸿蒙原生支持等方面仍有较大提升空间,亟需社区力量共同参与建设。

本次共建计划依托 AtomGit 平台 cj-awesome组织发起,面向全体开发者开放参与,旨在联合社区力量完善仓颉三方库生态,提升三方库的适配性、可用性和工程实践价值。开发者可按照本文流程完成任务认领、开发适配、成果提交、评审验收与激励申请。所有激励均在贡献验收通过后发放。

一、活动核心信息

  1. 活动周期:2026年7月15日-2026年10月30日(88 个共建库完成提前截止)

  2. 活动目标

    目标 说明
    扩展三方库数量 通过社区协作完成一批高质量三方库适配开发,覆盖网络、序列化、测试、数据库等关键领域
    完善版本适配 每个三方库同时适配 LTS(1.0.5)和 STS(1.1.3)双版本,确保多发行线下的兼容性与可用性
    推动鸿蒙原生 推动三方库向 HarmonyOS 6.1.0 仓颉体验版迁移适配,拓展仓颉在鸿蒙生态中的覆盖面
    探索 AI 赋能 验证 AI 辅助工具在仓颉三方库适配场景中的效率提升,形成可推广的 AI+开源协作最佳实践
    培育社区力量 通过标准化开源协作流程培养一批熟悉仓颉生态的贡献者,壮大社区开发者和维护者队伍
    建立工程规范 沉淀标准化的代码规范、文档模板、中心仓发布流程和验收标准,为后续持续共建提供可复用的工程体系
  3. 工具链与版本要求

  4. 共建组织cj-awesome

  5. 参与对象:社区开发者、高校学生、企业职员。

  6. 共建范围:88 个共建三方库适配开发、测试验证、文档完善及中心仓发布。

二、详细参与流程

本次三方库共建采用 AtomGit 三方库共建开源协作标准流程,所有操作均在 cj-awesome/docs 仓库及关联三方库仓库中完成。全流程共 6 个核心步骤,可在仓库 Issue / PR 区跟踪进度。

步骤 1:前置准备

  1. 加入官方共建交流群:扫描下方二维码加入交流群。群内将发放共建资料包,包括赋能材料、适配标准等,并提供实时答疑。

    ff5de2b2b6e9803273cb9d7a3a23e68f

  2. 注册 AtomGit 并配置 Git 账号:打开 AtomGit 官网完成账号注册,绑定手机号 / 邮箱,用于后续通知与激励发放,并配置本地 Git 环境:

    git config --global user.name "你的AtomGit账号"
    git config --global user.email "你的AtomGit绑定邮箱"
    
  3. 搭建开发环境:访问 https://cangjie-lang.cn/download 完成 LTS 和 STS 最新版本下载,参考安装指南完成环境搭建。详见:开发环境配置

  4. 安装 HarmonyOS 仓颉插件(鸿蒙仓颉必选)

步骤 2:项目认领

认领规则与锁定机制

  1. 每位开发者同一时间仅可认领一个库,认领库 PR 合入后才可以认领下一个库。每人最多可认领2个库。
  2. 认领库需要满足未被其他个人/团队认领。
  3. cj-awesome/docs Issues 面板新建 Issue,选择「[Task] 领取适配任务」模板,按照模板填写必要信息。Issue 标题需要带「【共建】」前缀
  4. 创建成功后,及时在交流群通知小助手锁定认领库。
  5. 同一库锁定以提 Issue 时间最早为先
  6. 同一开发者提交多个认领 Issue(未开始适配),以最早提交的 Issue 锁定认领库,其他库将释放,杜绝一个库未完成有效合入即认领多库的情况。
  7. 认领库PR合入后,提交到中心仓,才可以认领下一个库。每人最多可认领2个库,且难度需要不一样。(鸿蒙仓颉合入PR成功即可)

进度管理与超时释放

认领任务后,请及时推进开发并保持沟通:

  • 5 天内提交开发计划,并保持在 Issue 或社群中的沟通进度;
  • 10 天内无开发进展或沟通记录,任务将自动释放给其他开发者;
  • 连续 3 次超时未推进,将暂停认领资格 30 天。

一句话总结:认领了,就认真做;保持沟通,一起把仓颉生态建设得更好。

具体认领流程

项目认领步骤如下:

项目认领流程

  1. 浏览认领表格(共建群内可查看),根据自身熟悉的技术栈选择合适的库。若对任务范围、适配难度或交付要求有疑问,可先在共建交流群中沟通确认。

  2. 前往 Issue 区认领项目,点击 新建 Issue

    新建 Issue

  3. 选择 Task 模板领取仓颉三方库适配任务。

    选择 Task 模板

  4. 按模板填写相关信息并提交 Issue(标题需带「【共建】」前缀)。

    image-20260709155829217

  5. 在交流群通知小助手锁定认领库,等待社区人员回复并完成建仓确认。

    建仓确认

  6. 进入目标仓库后点击 Fork,将仓库克隆至个人账号下,填写基础信息后创建 Fork 项目。

    Fork 仓库

    创建 Fork 项目

  7. 确认仓库已 Fork 至个人账号后,即完成该三方库任务认领。

    image-20260212153351395.png

步骤 3:本地开发与共建

  1. 遵循开发与共建规范:严格按照群内共建资料包中的代码规范、文档模板和提交格式进行开发,确保代码可运行、文档准确清晰、适配结果符合验收标准。

  2. 完成本地测试验证:开发完成后,应在本地进行完整测试,确保成果无新增 Bug、满足任务需求,再进入提交环节。

  3. 及时同步问题与进度:开发过程中如遇到依赖、兼容性、API 行为差异或发布流程问题,应及时在交流群或 Issue 区反馈,便于维护者协助确认。

AI 工具与 Skills 推荐

本活动鼓励开发者合理使用 AI 工具辅助开发、测试、文档编写和工程协作。开发者在提交 PR 时,建议在描述中说明所使用的 AI 工具、使用场景、产出内容和质量校验方式,便于维护者了解开发过程并进行评审。

AI 工具 使用场景
AtomCode 代码生成、辅助编写、注释补全
AtomCode Air / InsCode 等 AI 助手 代码审查、重构建议、测试用例生成
x2cj 辅助将其他语言项目、接口或示例代码迁移 / 改写为仓颉实现,提升三方库适配效率

同时推荐开发者试用仓颉 AI 创新项目与相关 Skills。这些项目覆盖智能开发工具、知识基座、Agent 应用开发框架及示例应用等方向,可用于探索 AI 辅助编程、智能体构建和多 Agent 工程协作等场景。

  • CangjieSkills:面向 AI 开发工具的仓颉程序开发 Skills,支持从零创建仓颉项目并完成配置、开发、构建、运行和单元测试等流程。
  • ACEHarness:面向工程任务的本地 AI Multi-Agent 协作平台,支持 Spec Driven Development、状态机工作流、Supervisor 路由和多 Agent 协作。
  • CangjieCorpus:面向 RAG 技术的仓颉语言知识基座,整合官方开发指南、API 文档、典型代码示例和语法规范等语料资源。
  • CangjieMagic:基于仓颉原生 Agent DSL 与运行时 API 的 LLM Agent 应用开发框架,支持工具调用、模型接入、RAG、多 Agent 协作和 MCP 集成。示例代码可参考 CangjieMagic-Examples
  • magic-cli:基于 Cangjie Agent DSL 和 CangjieMagic 构建的 AI 命令行助手,支持对话式开发、仓颉工具链集成、文档检索和 MCP 扩展。
  • MagicExplorer:基于 CangjieMagic 的示例应用,可用于探索 Agent 开发与多 Agent 工程协作场景。

步骤 4:提交成果

提交成果前,请确认仓库满足以下目录结构规范,并同步群内运营人员进行材料检查。确认材料完整后,再发起仓库提交。

目录结构规范

纯仓颉:

{package}4cj/
├── doc/                    # 存放库设计文档、使用文档、LLT 覆盖报告
│   ├── assets/
│   ├── cjcov/
│   ├── feature_api.md
│   └── design.md
├── src/                    # 库源码目录
├── test/                   # 测试用例
├── CHANGELOG.md            # 版本更新日志
├── LICENSE                 # 开源协议
├── README.OpenSource       # 上游仓库开源信息
└── README.md               # 说明文档

鸿蒙仓颉:

{package}4cj/
├── doc/                    # 存放库设计文档、使用文档、LLT 覆盖报告
│   ├── assets/
│   ├── cjcov/
│   ├── feature_api.md
│   └── design.md
├── entry/                  # 库使用源代码
├── {package}/              # 库适配源代码
├── CHANGELOG.md            # 版本更新日志
├── LICENSE                 # 开源协议
├── README.OpenSource       # 上游仓库开源信息
└── README.md               # 说明文档

具体提交流程

  1. 发起 Pull Request(PR):打开目标仓库的 AtomGit 页面,点击 New Pull Request,选择个人仓库分支到官方仓库主分支,并按页面模板填写 PR 信息。

    发起 PR

    选择 PR 分支

    填写 PR 信息

  2. 填写 PR 关键信息

    • PR 标题需带「【共建】」前缀
    • 对应共建任务的 Issue 编号,用于关联任务。
    • 成果描述,说明完成了哪些开发、适配或文档工作。
    • 测试结果,说明本地测试环境、测试用例和执行结果。
  3. 提交后确认:PR 提交后,在交流群通知小助手,告知 PR 链接地址。仓库维护者会收到通知,开发者可在 PR 页面和交流群中同步进度,等待评审反馈。等待 PR 初审无误后,即可认领下一个库。

步骤 5:审核与验收

审核意见会直接反馈在 PR评论区/社群;如材料不完整或存在可修正问题,开发者按意见补充修改后再次提交即可。

  1. 材料与规范审核(1-2 个工作日):仓库维护者对提交成果按以下标准进行审核:

    审核项 要求
    ① PR 合规性 PR 标题带【共建】前缀,正文按模板填写完整
    ② 功能和测试用例 功能和测试用例是否与上游保持一致
    ③ 文档合规性 README.md、README.OPENSOURCE、CHANGELOG.md 等文档齐全且内容准确
    ④ 工程目录结构 目录结构完整,符合规范(见步骤 4 目录结构规范)
    ⑤ 双版本适配 是否包含 LTS 和 STS 两个版本
    ⑥ 中心仓发布 合入 PR 库需要发布仓颉中心仓
  2. 审核结果反馈:若符合要求,维护者在 PR 中标注「验收通过」并进入合并流程;若需补充材料或修改问题,维护者在 PR / Issue 中说明修改意见,开发者完成补正后重新提交。

  3. 成果合并:审核通过后,仓库维护者完成 PR 合并,该次贡献正式生效,并进入贡献统计及激励核对名单。合入 PR 清单将推送华为仓颉团队终审。

步骤 6:激励申请与发放

  1. 贡献统计:PR 合并后,官方会在活动结束后统一统计验收通过的贡献者及贡献信息,包括贡献者姓名、三方库名称、任务难度和对应奖品或权益信息,并在 cj-awesome/docs 仓库公告区公示。

  2. 激励核对:贡献者可在公示期内核对个人贡献信息。若有异议,可在交流群或 Issue 区提出,官方将在 24 小时内核实并修正。

  3. 激励发放:公示无异议后,官方将进行奖品、实物或权益发放,具体发放方式以组委会通知为准。

三、贡献激励

本次活动共设 88 个获奖名额,分为三个奖励档位。完成三方库共建并通过官方验收后,即可获得对应档位的等值电子产品奖励。所有激励均以等值奖品、实物或权益形式发放,不设置现金奖金。

image-20260709161419425

难度 名额 参考奖品(等值)
简单库(约 2000 行) 58 价值 1000 元的电子产品
中等库(约 5000 行) 20 价值 2000 元的电子产品
较难库(约 10000 行) 10 价值 3600 元的电子产品

具体奖品以华为商城实际库存及最终活动规则为准,如遇库存不足,将替换为同等价值的电子产品。

此外,优秀项目还有机会被推荐合入 Cangjie-TPC 组织,成为仓颉生态的一部分——这不仅是一场活动,更是一次真实参与开源生态建设的实践。每一次 Commit,都在为仓颉生态添砖加瓦;每一次 PR,都可能成为未来开发者使用的基础能力。

四、共建核心规范

  1. 代码与文档需确保无语法错误、逻辑混乱、格式不统一等问题。

  2. 开发过程中若遇到问题,优先在交流群提问或在 Issue 区留言,避免未经确认直接修改官方仓库代码。

  3. 禁止提交无意义成果,包括重复提交、仅修改标点或命名但无实际优化、抄袭他人成果等。此类成果不计入有效贡献。

  4. 多人协作的任务,需在 Issue / PR 中注明所有贡献者信息及各自负责内容,便于评审和激励核对。

  5. 所有提交应保留清晰的提交记录、测试说明和必要截图,确保维护者能够快速复现、审核和验收。

五、支持与答疑

  1. 资料查询:共建所需的代码规范、文档模板和适配标准均可在 cj-awesome/docs 仓库 中查阅。

  2. 实时答疑:官方共建交流群为核心答疑渠道,维护者提供答疑回复。

  3. 问题反馈:若对任务、评审或激励有异议,可在 cj-awesome/docs 仓库 Issue 区新建「问题反馈」Issue,官方将在 24 小时内核实处理。

  4. 技术支持:针对复杂共建任务,官方将按需在群内组织线上技术答疑会。

六、活动附则

  1. 官方有权根据共建进度和生态需求调整任务类型、验收要求及激励标准。相关调整将在仓库公告区提前公示。

  2. 参与本次活动即视为认可本方案所有条款。

  3. 本活动最终解释权归官方所有。

热门项目
30

cjv是 [仓颉](https://cangjie-lang.cn/) SDK 的工具链管理器:安装并管理多套 SDK,切换默认版本,并让 `cjc`、`cjpm` 等 SDK 工具按当前项目透明代理到正确工具链。

4

byteorder4cj 是 Rust byteorder 库面向仓颉语言的移植版本,提供大端/小端字节序的读写能力。

2

leap_year 是仓颉语言实现的闰年判断工具库,提供公历闰年的检测与相关计算。

1

humanize 是一个功能强大的人性化格式转换库,专为仓颉语言(Cangjie)开发。该库提供了一系列实用的格式化函数,能够将数字、字节、时间等数据转换为人类可读的友好格式,让你的应用程序输出更加友好和易读。

  • byteorder4cj 是 Rust byteorder 库面向仓颉语言的移植版本,提供大端/小端字节序的读写能力。
    Cangjie
    4
    1
    NOASSERTION
    更新于 7月23日
    Star
  • logos4cj 是 Rust logos 词法分析器生成库面向仓颉语言的移植版本,通过声明式规则快速生成高效的词法分析器。
    Cangjie
    0
    1
    NOASSERTION
    更新于 29 天前
    Star
  • textwrap4cj 是 Rust textwrap 0.16.2 面向仓颉的迁移版本,用于按终端显示列宽进行换行、填充、缩进、去缩进和多列排版。
    Cangjie
    1
    1
    MIT
    更新于 7月22日
    Star
  • maud4cj 是 Rust maud HTML 模板库面向仓颉语言的移植版本,提供在代码中直接编写类型安全的 HTML 模板能力。
    Cangjie
    0
    1
    MIT
    更新于 7月21日
    Star
  • requests4cj 是 Python requests 库面向仓颉语言的移植版本,提供简洁易用的 HTTP 客户端 API。
    Cangjie
    0
    1
    Apache-2.0
    更新于 4 天前
    Star
  • postcard4cj 是 Rust postcard 库面向仓颉语言的移植版本,提供专为嵌入式与资源受限环境优化的紧凑序列化格式。
    Cangjie
    1
    1
    NOASSERTION
    更新于 24 天前
    Star
  • tempfile4cj 是 Rust tempfile 库面向仓颉语言的移植版本,提供安全、自动清理的临时文件与目录创建。
    Cangjie
    0
    1
    MIT
    更新于 9 天前
    Star
  • ipnetwork4cj 是 IP 网络地址处理库的仓颉语言实现,支持 IPv4/IPv6 地址与网段的解析和运算。
    Cangjie
    1
    1
    NOASSERTION
    更新于 7月20日
    Star
  • jjwt4cj 是 JWT(JSON Web Token)库的仓颉语言实现,支持 Token 的创建、解析与签名验签。
    Cangjie
    0
    1
    Apache-2.0
    更新于 7月29日
    Star
  • ryu4cj 是 Rust ryu 库面向仓颉语言的移植版本,用于将浮点数快速格式化为最短的十进制字符串表示。
    Cangjie
    0
    1
    BSL-1.0
    更新于 23 天前
    Star
查看全部项目 >
公告
暂无公告
成就
62
Star
152
Fork
7.82 K
Download
常用语言
Cangjie
Markdown
C
HTML
Rust