@cosmicdrift/kumiko-framework

中文文档
0.419.0发布于 2026/11/11MITTypeScriptES Module构建来源已验证近 30 天下载 2.7万

框架核心——发动机,管线,API,DB,以及使克米子去的所有其他位子.

中文使用文档
文档目录6 节
  1. 安装
  2. 闪亮
  3. 软件包出口
  4. 核心概念
  5. 状态
  6. 许可证

@cosmicdrift/kumiko-框架

License: MIT TypeScript

Kumiko-发动机、管道、API、DB、事件存储和 每一分钱都能让久美子走.

Bun + Hono + 的多租户、基于命令、事件源应用程序框架 后发相. 定义特性、注册实体、写入命令——框架 电线发送、持久性、预测、同步用户和实时 交货.

见 单列波根 README 为了更大的投出 文件/计划 建筑目录,以及 样本/ 用于每个特性的可运行示例.

安装

bun add @cosmicdrift/kumiko-framework
# peers you probably already have:
bun add hono ioredis zod

Bun是预定的运行时间和测试跑者.

闪亮

import { createEntity, createTextField, defineFeature } from "@cosmicdrift/kumiko-framework/engine";

export const taskEntity = createEntity({
  table: "read_tasks",
  fields: {
    title: createTextField({ required: true, searchable: true }),
    done: createTextField(),
  },
  softDelete: true,
});

export const taskFeature = defineFeature("tasks", (r) => {
  // r.crud wires create/update/delete/restore + list/detail queries in one
  // call — events + projection in the same TX, optimistic locking, access
  // control, all explicit via the options below.
  r.crud("task", taskEntity, {
    write: { access: { roles: ["User"] } },
    read: {
      access: {
        openToAll: {
          reason: "any signed-in user may list and view tasks; only writes are role-gated",
        },
      },
    },
  });

  // Read-model fed from task events, rebuildable via the CLI
  r.projection({
    name: "tasks-per-day",
    source: "task",
    table: tasksPerDayTable,
    apply: {
      "task.created": async (event, tx) => {
        /* count++ */
      },
    },
  });

  // Async consumer — runs after commit via the event-dispatcher,
  // cursor-based, at-least-once, per-consumer dead-letter semantics.
  // Omit `table` for pure side-effect handlers (mail, webhooks, ...).
  r.multiStreamProjection({
    name: "notify-new-task",
    apply: {
      "task.created": async (event) => {
        // e.g. push to an external notification service
      },
    },
  });
});

软件包出口

条目里面有什么东西
@cosmicdrift/kumiko-framework/enginedefineFeature, (中文(简体) ), createEntity、实地帮助者、访问规则、登记
@cosmicdrift/kumiko-framework/dbderiveEntityTableMeta, (中文(简体) ), createEventStoreExecutor移徙、租户-db
@cosmicdrift/kumiko-framework/event-storeevents 表格中, append, (中文(简体) ), loadAggregate, (中文(简体) ), loadAggregateAsOf
@cosmicdrift/kumiko-framework/pipeline调度员,事件发送员(AsyncDaemon),投影重建,SSE+搜索消费者
@cosmicdrift/kumiko-framework/apibuildServer、 认证中间软件、 SSE 路由、 错误合同
@cosmicdrift/kumiko-framework/authJWT 助手, 密码散列, 会话用户
@cosmicdrift/kumiko-framework/searchSearchAdapter 接口、 内记忆适配器、 Meili 包
@cosmicdrift/kumiko-framework/jobs由 BullMQ 支持的工作选手, cron 排程
@cosmicdrift/kumiko-framework/files已签名的 URL 上传/下载、租户范围存储
@cosmicdrift/kumiko-framework/i18ni18next设置,每个地段的翻译注册
@cosmicdrift/kumiko-framework/ui反应钩子(Zustand商店,SSE订阅,乐观变种)
@cosmicdrift/kumiko-testing/stacksetupTestStack, (中文(简体) ), createTestDb,请求帮助
@cosmicdrift/kumiko-framework/utils安全 JSON, 合格名助手
@cosmicdrift/kumiko-framework/errors错误分类, writeFailure,理由合同

核心概念

  • 作为部署单位的特点. defineFeature 登记实体, 写作/处理器、预测、活动后用户、生命周期钩、, 和翻译.
  • 指挥入,出州. 写作是通过HTTP发送的命令; 发送器验证,强制访问,运行生命周期钩,持续 并触发一个TX的预测.
  • 事件来源默认. 每一个字都经过 createEventStoreExecutor ,并将一个域事件附加到聚合流中。 自动生成 CRUD 活动(<entity>.created/updated/deleted/restored记录下来, 明确 ctx.events.append 用于有意的域事件。 预测反馈 关闭流中用于同-TX读后写入一致性.
  • Async 通过光标的副作用. SSE广播、搜索索引和 特性注册 r.multiStreamProjection 消费者单打独斗 基于光标的调度器( AsyncDeamon 模式) 。 消费者检查站, n重试之后的死信.
  • 多租户范围界定. 每个事件、实体、投影和搜索 索引带 tenantId。 。 。 . TenantDb 是拒绝的 TX 扫描包 在租户外写作.
  • 乐观的货币. UNIQUE(aggregate_id, version) 活动说明 给原子附件+冲突检测; VersionConflictError 表面 种族作为一等值.
  • 同上,p.c.c.c.c.c.c.c.c.c.c.c.c.c.c.d.c.c.c.c.c.c.d.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c. . . . . . . . . ......................................................................................... 关于事件的请求- id 备份独有索引 表格将重试变为重放. IdempotencyGuard 缓存写入 每一房客的结果.

状态

这个框架是1.0前的,进取快. 每个特性都有可运行的 样本 samples/;路线图生活在 文件/计划/基准。 。 。 .

许可证

麻省理工学院,看 自由主义。 。 。 .

版本与发布记录

@cosmicdrift/kumiko-framework 共发布 551 个版本,首次发布于 2026/05/07;过去 12 个月发布了 551 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.419.0latest2026/11/11今天
0.418.02026/11/101 天前
0.417.02026/11/091 天前
0.416.02026/11/082 天前
0.415.02026/11/064 天前
0.414.02026/11/055 天前

其他发布通道:kumiko-tmp → 0.355.0。

关于 @cosmicdrift/kumiko-framework 的常见问题

@cosmicdrift/kumiko-framework 是什么?

框架核心——发动机,管线,API,DB,以及使克米子去的所有其他位子.

如何安装 @cosmicdrift/kumiko-framework?

在项目目录运行 npm install @cosmicdrift/kumiko-framework,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:bun-types(^1.4.4)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@cosmicdrift/kumiko-framework 支持 TypeScript 吗?

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

@cosmicdrift/kumiko-framework 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@cosmicdrift/kumiko-framework 可以商用吗?

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

@cosmicdrift/kumiko-framework 的下载量有多少?

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

@cosmicdrift/kumiko-framework 还在维护吗?

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