@gammarers/projen-projects

中文文档
0.8.0发布于 2026/11/09Apache-2.0TypeScriptCommonJS构建来源已验证近 30 天下载 2573
中文使用文档
文档目录9 节
  1. 特征
  2. 安装
  3. 无
  4. 线条
  5. 小时
  6. 使用量
  7. 选项
  8. 所需资源
  9. 许可证

Projen项目

npm version license Node.js build

意见 projen 语录 aWS CDK 构建库、 jsii 库和 TypeScript 软件包的项目类型.

特征

  • ProjenCdkConstructLibrary - 一个 AwsCdkConstructLibrary 带有共享默认值的包装
  • ProjenJsiiProject a 包括: JsiiProject 带有相同共享默认的包装
  • ProjenTypeScriptProject a 包括: TypeScriptProject 带有相同共享默认的包装
  • 仅需要 name 财务报告和审定财务报表 repositoryUrl 开始( n)cdkVersion cDK 库也需要)
  • 共享作者, 节点( N)>= 20),类型脚本(6.0.x页:16.0.x, jsii / CDK 库)设置
  • GitHub App 工作流程认证证书
  • 每周依赖性升级,自动批准/自动合并标签
  • 生成一致 .editorconfig 设置 ESLint max-len 改为160
  • 运行游戏 --silent 所以测试日志保持安静
  • 启用类型脚本 strict 正在开发 tsconfig
  • 默认发现 AWS Lambda 处理器到节点 24, 带有 @aws-sdk/* 外部和来源地图
  • 生成 .devcontainer/devcontainer.json 与工作流程节点一致 24.x

安装

无

npm install @gammarers/projen-projects

线条

yarn add @gammarers/projen-projects

小时

pnpm add @gammarers/projen-projects

使用量

创建一个 .projenrc.ts 用于 ProjenCdkConstructLibrary数字 :

import { ProjenCdkConstructLibrary } from '@gammarers/projen-projects';

const project = new ProjenCdkConstructLibrary({
  name: '@example/my-cdk-construct',
  repositoryUrl: 'https://github.com/example/my-cdk-construct.git',
  cdkVersion: '2.170.0',
});

project.synth();

或使用 ProjenJsiiProject 多语言的 jsii 库:

import { ProjenJsiiProject } from '@gammarers/projen-projects';

const project = new ProjenJsiiProject({
  name: '@example/my-jsii-library',
  repositoryUrl: 'https://github.com/example/my-jsii-library.git',
});

project.synth();

或使用 ProjenTypeScriptProject 用于类型脚本包 :

import { ProjenTypeScriptProject } from '@gammarers/projen-projects';

const project = new ProjenTypeScriptProject({
  name: '@example/my-typescript-project',
  repositoryUrl: 'https://github.com/example/my-typescript-project.git',
});

project.synth();

然后生成工程文件 :

npx projen

选项

ProjenCdkConstructLibrary 接受 ProjenCdkConstructLibraryOptions,扩展 AwsCdkConstructLibraryOptions (大多数字段可选),同时要求:

选项类型需求说明
namestring对软件包名称
repositoryUrlstring对Git 寄存器 URL( jsii 生成) repository 从此值)
cdkVersionstring对AWS CDK 版本

可选亮点 :

选项说明
其它 AwsCdkConstructLibrary 选项已经通过并可以覆盖内置默认值,包括 lambdaOptions。 。 。 . devContainer 留下来 false

内建默认包含作者 yicr作为软件包管理器, releaseToNpm: false, (中文(简体) ), 公开 npm 访问, 工作流程节点 24.x,以及基于 GitHub App 的 projen 证书. 发现的Lambda处理器使用节点24,不包括 @aws-sdk/* 从捆绑,发射源地图. 通过 lambdaOptions 替换默认值。 没有Lambda处理器的图书馆没有变化.

ProjenJsiiProject 接受 ProjenJsiiProjectOptions,扩展 JsiiProjectOptions (大多数字段可选),同时要求:

选项类型需求说明
namestring对软件包名称
repositoryUrlstring对Git 寄存器 URL( jsii 生成) repository 从此值)

其它 JsiiProject 选项通过,并可以覆盖内置默认值. devContainer 留下来 false。同一作者,节点,类型脚本,jsii(6.0.x), npm,和 (中文(简体) ) GitHub App 默认为 ProjenCdkConstructLibrary 应用(没有 CDK / Lambda 设置).

ProjenTypeScriptProject 接受 ProjenTypeScriptProjectOptions,扩展 TypeScriptProjectOptions (大多数字段可选),同时要求:

选项类型需求说明
namestring对软件包名称
repositoryUrlstring对Git 寄存器 URL( 作为 projen 通过) repository(中文(简体) )

其它 TypeScriptProject 选项通过,并可以覆盖内置默认值. devContainer 留下来 false。同一作者、节点、类型脚本、 npm 和 GitHub App 默认 作为 ProjenCdkConstructLibrary 应用( e)jsiiVersion 没有设置,因为该类型不是一个jsii项目.

所有三种类型都写 .devcontainer/devcontainer.json 添加 /.devcontainer 改为 .npmignore。 。 。 . jsii 项目(包括 CDK 构建库) 也安装了 .NET、 Python 和 Java Dev集装箱特性. 在容器创建后,它将确定该容器的所有权 node_modules ,将工作空间标记为 Git 安全目录,并运行工程的 不可移动的安装命令( n)npm ci 与默认的软件包管理器).

所需资源

  • 节点.js >= 20.0.0

许可证

这个项目根据Apache-2.0许可证获得许可证.

版本与发布记录

@gammarers/projen-projects 共发布 29 个版本,首次发布于 2026/08/24;过去 12 个月发布了 29 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.8.0latest2026/11/096 天前
0.7.12026/11/087 天前
0.7.02026/11/0411 天前
0.6.32026/11/0114 天前
0.6.22026/10/2521 天前
0.6.12026/10/2522 天前

关于 @gammarers/projen-projects 的常见问题

@gammarers/projen-projects 是什么?

[[(]https://www.npmjs (中文(简体) )

如何安装 @gammarers/projen-projects?

在项目目录运行 npm install @gammarers/projen-projects,或使用 pnpm add / yarn add / bun add。

@gammarers/projen-projects 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@gammarers/projen-projects 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@gammarers/projen-projects 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >= 20.0.0。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@gammarers/projen-projects 可以商用吗?

@gammarers/projen-projects 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。

@gammarers/projen-projects 的下载量有多少?

根据 npm 官方下载统计,@gammarers/projen-projects 在 2026/10/16 – 2026/11/14 这 30 天内被下载 2,573 次,日均约 86 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@gammarers/projen-projects 还在维护吗?

最新版本 0.8.0 发布于 2026/11/09(6 天前);至今共发布 29 个版本,其中过去 12 个月发布了 29 个;首次发布于 2026/08/24。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。