@application-kit/bootstrap

中文文档
0.4.0发布于 2026/11/08MITTypeScriptESM + CJS近 30 天下载 1804

################################################################################################################################################################################################################################################################

中文使用文档
文档目录7 节
  1. Установка
  2. Входы
  3. Окружение
  4. 网页
  5. 斯瓦格语Name
  6. 消费者
  7. 国 际

@ application- kit/ bootstrap

(原始内容存档于2018-09-26) (英语). NestJS: web QQQ快活 с,消费 и CLI на Conders-console. Состав модулей,контроллеры也. (原始内容存档于2018-09-29). Swagger и: пакет: пакет: собирает: из: Порт,число {\fn黑体\fs22\bord1\shad0\3ahbe\4ah00\fscx67\fscy66\2chffffff\3ch808080}你觉得呢.

Установка

yarn add @application-kit/bootstrap

同行—— @nestjs/common, (中文(简体) ), @nestjs/core, (中文(简体) ), nestjs-pino{\fn黑体\fs22\bord1\shad0\3ahbe\4ah00\fscx67\fscy66\2chffffff\3ch808080}你觉得呢? {\fn黑体\fs22\bord1\shad0\3ahbe\4ah00\fscx67\fscy66\2chffffff\3ch808080}我. @application-kit/observability пакет. Логгер,обоих nestjs-pino时间轴: LoggerModule обязан {\fn黑体\fs22\bord1\shad0\3ahbe\4ah00\fscx67\fscy66\2chffffff\3ch808080}你觉得呢.

Входы

ВходДляТянет
@application-kit/bootstrap/webwebBootstrap, (中文(简体) ), createFastifyApplication ——网易@nestjs/platform-fastify, (中文(简体) ), @fastify/cookie, (中文(简体) ), class-validator, (中文(简体) ), class-transformer, (中文(简体) ), @opentelemetry/api, (中文(简体) ), @libs-for-dev/nestjs-config-module
@application-kit/bootstrap/consumerconsumerBootstrap -=YTET -伊甸园字幕组=- 翻译:class-validator, (中文(简体) ), class-transformer, (中文(简体) ), @libs-for-dev/nestjs-config-module
@application-kit/bootstrap/clicliBootstrap ——CLI+++nestjs-console
@application-kit/bootstrap/swaggersetupSwagger ——OpenAPI网络版@nestjs/swagger, (中文(简体) ), class-validator, (中文(简体) ), class-transformer, (中文(简体) ), @libs-for-dev/nestjs-config-module

校对:Soup nestjs-console (原始内容存档于2013-10-12). QQ, CLI-快取.

Окружение

ПеременнаяПроцессПо
PORT网络3000порт listen на 0.0.0.0
TRUST_PROXY_HOPS网络0сколько перед; 0 {\fn黑体\fs22\bord1\shad0\3ahbe\4ah00\fscx67\fscy66\2chffffff\3ch808080}你觉得呢
METRICS_PORT消费者3001{\fn黑体\fs22\bord1\shad0\3ahbe\4ah00\fscx67\fscy66\2chffffff\3ch808080}你觉得呢 /metrics
SWAGGER_ENABLED网络false{\fn黑体\fs22\bord1\shad0\3ahbe\4ah00\fscx67\fscy66\2chffffff\3ch808080}你觉得呢 setupSwagger页:1 false, (中文(简体) ), 0 {\fn黑体\fs22\bord1\shad0\3ahbe\4ah00\fscx67\fscy66\2chffffff\3ch808080}你觉得呢

=============================================== ========================================================================================================================================================================= abc, (中文(简体) ), 1.5, (中文(简体) ), -1(b) —— ClassValidationError с 说吧 Number('abc') дал NaN说吧 说吧.

网页

import { webBootstrap } from '@application-kit/bootstrap/web'

void webBootstrap(AppModule, {
  configure: (app) => {
    setupMetricsHooks(app)
  },
})

webBootstrap {\fn黑体\fs22\bord1\shad0\3ahbe\4ah00\fscx67\fscy66\2chffffff\3ch808080}你还好吧 createFastifyApplication时 возвращает. createFastifyApplication ? ? ? ? ? ? ? ? ? ? ?

import { createFastifyApplication } from '@application-kit/bootstrap/web'

const app = await createFastifyApplication(AppModule, {
  configure: (app) => {
    setupMetricsHooks(app)
  },
  trustProxyHops: 2,
})
await app.listen(port, '0.0.0.0')

(笑声)

  1. 变速 : genReqId —— 说 x-request-id ===================================================================================================== (============================================================fastifyRequestId из @application-kit/observability/logging) ; доверенные trustProxyHops {\fn黑体\fs22\bord1\shad0\3ahbe\4ah00\fscx67\fscy66\2chffffff\3ch808080}你觉得呢 X-Forwarded-For说吧 说吧, request.ip не.
  2. @fastify/cookie с cookie。 。 。 .
  3. Хук onRequest时间轴: x-request-id {\fn黑体\fs20\shad2\2ah82\3ah20\4ah33\fscx95\3ch592001\be1}你觉得怎么样.
  4. configure(app) ——настройка.
  5. LoggerErrorInterceptor и и nestjs-pino * 巢穴; uncaughtException . . . . . .
  6. 关机钩:по相克/相克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克.
  7. Глобальный ValidationPipe с transform: true时间轴: validationErrorStatus и и { statusCode, validationErrors: [{ property, constraints }] }, вложенное parent.child。 。 。 .
ОпцияПо
trustProxyHops0сколько перед; 0 {\fn黑体\fs22\bord1\shad0\3ahbe\4ah00\fscx67\fscy66\2chffffff\3ch808080}你觉得呢
validationErrorStatus422{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢
cookie{}опции @fastify/cookie· ; false плагин не
configure—— 说(app) => void,========================================================================== =============================================================================================================================

斯瓦格语Name

import { setupSwagger } from '@application-kit/bootstrap/swagger'

const options = {
  configure: (app) => {
    setupSwagger(app, { include: [HealthHttpModule, MetricsHttpModule] })
  },
} satisfies FastifyApplicationOptionsInterface

{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你还好吧 SWAGGER_ENABLED он публикуется. {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢 include, (中文(简体) ), operationId ——имя. UI отдаётся по path (по swagger(原始内容存档于2019-06-26) (英语). JSON <path>-json时 info —— 说 version (по 1.0) (中文(简体) ).

消费者

import { consumerBootstrap } from '@application-kit/bootstrap/consumer'
import { kafkaConsumerServer } from '@application-kit/kafka'

void consumerBootstrap(ConsumerModule, kafkaConsumerServer)

Сервер /metrics поднимается METRICS_PORT {\fn黑体\fs22\bord1\shad0\3ahbe\4ah00\fscx67\fscy66\2chffffff\3ch808080}你觉得呢 {\fn黑体\fs22\bord1\shad0\3ahbe\4ah00\fscx67\fscy66\2chffffff\3ch808080}你觉得呢 nestjs-pino。 。 。 .

国 际

import { cliBootstrap } from '@application-kit/bootstrap/cli'

void cliBootstrap(CliModule)

{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢 process.argv{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢 . . . error с context: 'Console process failed.' ? ? ? ? 一? ? ? ? ? ? Корневой импортирует ConsoleModule из nestjs-console。 。 。 .

版本与发布记录

@application-kit/bootstrap 共发布 9 个版本,首次发布于 2026/10/18;过去 12 个月发布了 9 个版本。

版本发布日期距今
0.4.0latest2026/11/08今天
0.3.02026/11/061 天前
0.2.42026/11/043 天前
0.2.32026/11/035 天前
0.2.22026/10/2216 天前
0.2.12026/10/2217 天前

关于 @application-kit/bootstrap 的常见问题

@application-kit/bootstrap 是什么?

################################################################################################################################################################################################################################################################

如何安装 @application-kit/bootstrap?

在项目目录运行 npm install @application-kit/bootstrap,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:nestjs-pino(^4.6.1)、@nestjs/core(^11.0.0)、@nestjs/common(^11.0.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@application-kit/bootstrap 支持 TypeScript 吗?

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

@application-kit/bootstrap 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@application-kit/bootstrap 需要什么版本的 Node.js?

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

@application-kit/bootstrap 可以商用吗?

@application-kit/bootstrap 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@application-kit/bootstrap 的下载量有多少?

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

@application-kit/bootstrap 还在维护吗?

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