Token导航 LogoToken导航TokenDH.com
cjoy (Cangjielanguage Sig) logo
运维云端未说明官方级别未说明来源级核验

cjoy (Cangjielanguage Sig)

MCP Server

一个高性能、可扩展、轻量级的仓颉语言应用开发框架,简化后端应用开发,支持多种协议和认证方式。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
微服务云端部署Docker

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

cangjielanguage-sig

提供方

cangjielanguage-sig

最后核验

2026/5/17 20:20

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

CJoy

A fast, extensible, lightweight and joyful Cangjie application framework.

一个高性能、可扩展、轻量、省心的仓颉应用开发框架。


概览

CJoy 借鉴了多种语言 Web 开源框架的设计优点,基于仓颉语言打造的高性能、高扩展性、高易用性的应用开发框架。

特性

在仓颉 SDK 提供的 HTTP 框架基础上进一步封装,简化后端应用开发:

特性描述
🌲 高效路由基于压缩前缀树的路由管理,支持多种 Path 的高效注册与路由、路由分组
🎭 中间件扩展基于拦截器的中间件扩展能力,支持 Session 等多种能力扩展
📦 上下文管理基于 Context 的上下文管理,支持快速获取请求参数与构建 Json/Text 响应
🔧 IoC 容器基于编译宏的轻量级 IoC 框架,轻松实现依赖倒置与模块间松耦合
📝 JSON 处理基于编译宏的 JSON 序列化与反序列化,支持请求与响应消息的 JSON 直接绑定映射
自动注册基于编译宏支持自动注册与参数注入请求处理函数与中间件函数、请求参数校验
🤖 MCP 服务基于编译宏支持 MCP 服务暴露工具等能力给 LLM
📡 内置能力内置文件下载与上传、WebSocket、SSE 等能力
🔐 认证支持内置多种中间件,支持 Basic、Token、JWT、OAuth2 等认证

应用场景

  • ♠️ API 服务:快速开发 API 服务并配置路由规则与管理各种资源
  • ♥️ Web 服务:压缩前缀树高性能路由查找与文件服务,提升性能优势
  • ♣️ 微服务:路由组与内置 JSON 编译宏,轻松实现微服务各类接口分组管理与接口调用
  • ♦️ MCP 服务:提供 AI MCP 服务组件编译宏,快速暴露 MCP 的工具等能力给 LLM

技术特点

特点描述
🚀 高性能零反射,基于编译宏生成代码,前缀树高效路由,运行时高性能
🧩 轻量化零第三方库依赖,内置 Web 应用开发常见能力,模块化按需使用,灵活组装
🔌 可扩展提供中间件与服务扩展机制,支持对请求拦截与服务调用,丰富应用能力
😊 易上手内置多种能力,提供编译宏,简化 Web、MCP 应用开发,聚焦应用逻辑
🛠️ 多协议支持 HTTP/1.1、HTTP/2、WebSocket、SSE、MCP 等协议

应用架构

  • CJoy 提供 Server 框架、中间件、Service、通用能力
  • 开箱即用,应用只需实现业务逻辑的 Handler

快速开始

⚠️ 注意 CJoy 支持 Windows、Linux 与 MacOS,推荐在 Linux(或 WSL)、MacOS 中运行仓颉,获得更好更快的体验。

环境要求

仓颉版本:v1.0.4

本项目依赖仓颉 stdx 包,请先下载对应版本的 stdx 包,使用说明参见 仓颉编程语言 stdx

目录结构示例

$HOME
├── cangjie          # 仓颉 SDK 目录
└── cangjiestdx      # 新建此目录
    └── linux_x86_64_llvm  # 解压对应的 stdx 包,不同 OS 目录名称不同

配置环境变量(Linux 与 MacOS):

# 修改用户家目录的 .bashrc 或 .zshrc(取决于采用 bash 还是 zsh)
export CANGJIE_STDX_PATH=$HOME/cangjiestdx

运行示例

克隆项目并运行示例:

git clone https://gitcode.com/Cangjie-SIG/cjoy.git
cd cjoy

# 运行测试
cjpm test

# 构建项目
cjpm build

# 运行示例
cd examples
cjpm run --name examples.tls

添加依赖

在您的项目 cjpm.toml 文件中添加依赖:

[dependencies]
cjoy = { git = "https://gitcode.com/Cangjie-SIG/cjoy.git", branch = "main" }

快速了解

import cjoy.*

main(): Int64 {
    // 创建 joy 实例
    let joy = Joy.default()

    // 带参路由:GET /{name}
    joy.router.get("/{name}", { ctx: JoyContext =>
        let name = ctx.getParam("name") ?? "no name"
        ctx.string("name in parameter path, name=${name}")
    })

    // 静态路由:GET /abc
    joy.router.get("/abc", { ctx: JoyContext =>
        ctx.string("static path abc")
    })

    // 启动服务
    joy.run("127.0.0.1", 18881)
    return 0
}

使用指导

快快通

核心功能

基础服务

安全认证

辅助工具

协议扩展


更多示例

CJoy 内置丰富的示例与测试用例,请移步 examples,也可以参考本项目的测试代码。


版本说明

CJoy 目前还在开发阶段,主要能力已完成开发,后续重点是提升测试覆盖率,以及扩展各类中间件与服务。在 1.0.0 版本发布之后,项目会稳定 API 与目录结构。

版本发布方式:采用打 Tag 的方式。

依赖引用建议

# 依赖 main 分支(获取稳定最新特性)
[dependencies]
cjoy = { git = "https://gitcode.com/Cangjie-SIG/cjoy.git", branch = "main" }

# 依赖指定 tag
[dependencies]
cjoy = { git = "https://gitcode.com/Cangjie-SIG/cjoy.git", tag = "v0.90.0" }

参与贡献

邀请您与我们共同打造更优秀的 CJoy。

  • 分享使用经验:如果您觉得 CJoy 很实用,您的 Star 是对我们最大的鼓励。欢迎在个人博客撰写评测或教程,您的真知灼见能帮助更多人快速上手!
  • 参与项目开发:欢迎给我们提交 PR、Issue,欢迎参与任何形式的贡献。
  • 贡献指南contributing
  • 项目维护者@lanlingx

若您 fork 时请保留上游仓库地址 Cangjie-SIG/cjoylanlingx/cjoy,让 CJoy 变成仓颉生态中最广为人知的应用开发框架。


协议

参见 LICENSE 文件。

目录标签

目录标签

微服务云端部署DockerCangjie本地部署Web框架高性能路由中间件扩展JSON处理IoC容器

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

token

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明token部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP