@asteby/metacore-marketplace

中文文档
153.1.0发布于 2026/10/21Apache-2.0TypeScriptES Module零依赖近 30 天下载 3729

元核心市场 SDK——枢纽目录+ Ops安装/升级客户端,React hooks,以及共享于主机应用程序(Ops,链接)的无头UI原始.

中文使用文档
文档目录8 节
  1. 盒子里的东西
  2. 快速启动
  3. 提供者模式
  4. 特性 v2 + v3
  5. 同意规则
  6. 尾风 v4 接线
  7. 同伴依赖关系
  8. 消费者(计划)

@asteby/metacore-市场

元生态系统的SDK市场——运输不可知枢纽 分类 + 本地 Ops 内核客户端、 React 查询钩和无头 UI 每个主机应用共享的原始(Ops,链接,未来应用).

盒子里的东西

src/
  client/       # HubClient (catalog + install initiation)
                # OpsClient (install/upgrade/uninstall against local kernel)
                # types + manifest normalization (v2 ⇆ v3) + diff helpers
  hooks/        # React Query wrappers: useCatalog, useAddonDetail,
                # useInstalledAddons, useInstallAddon (chained 2-step),
                # useUninstallAddon, useUpgradeAddon
  components/   # MarketplaceCatalog, AddonCard, AddonDetailPanel,
                # InstallConfirmModal, InstalledAddonsList, PermissionsDiff
  providers/    # MarketplaceProvider (wires hub + ops + labels into context)

快速启动

import {
  MarketplaceProvider,
  createHubClient,
  createOpsClient,
  createFetchFetcher,
  MarketplaceCatalog,
} from '@asteby/metacore-marketplace'

const hubFetcher = createFetchFetcher({
  baseUrl: 'https://hub.metacore.dev',
  headers: () => ({ authorization: `Bearer ${getHubToken()}` }),
})

const opsFetcher = createFetchFetcher({
  baseUrl: '/api', // your own ops/link API base
  headers: () => ({ authorization: `Bearer ${getAccessToken()}` }),
})

const hub = createHubClient({ fetcher: hubFetcher })
const ops = createOpsClient({ fetcher: opsFetcher })

export function MarketplacePage() {
  return (
    <MarketplaceProvider hub={hub} ops={ops} organizationId={currentOrgId}>
      <MarketplaceCatalog onSelectAddon={(a) => navigate(`/marketplace/${a.key}`)} />
    </MarketplaceProvider>
  )
}

提供者模式

镜像 @asteby/metacore-app-providers ——消费电线运输 一次在应用根,每个钩/组件都从上下文读取。 这个 包件本身的船 零全球状态.

  • hub:目录阅读器 + 安装发起器(对公共枢纽的跟踪).
  • ops:生命周期作家(跟随主机本地内核).
  • organizationId: 需要——安装请求携带.
  • labels:可选的i18n 覆盖.

特性 v2 + v3

市场在生产方面已经有两种明显的形态。 这个 软件包曝光 :

  • RawManifest (单位:千美元)ManifestV2 | ManifestV3() 受歧视的结合 赫德还来.
  • Manifest 常规形状: capabilities + permissions 崩溃 将原列表与原列表合并 raw 有效载数 保留了下来.

使用 normalizeManifest() 每个版本显示一次; 通过结果 改为 PermissionsDiff 财务报告和审定财务报表 InstallConfirmModal。钩子接受 正常状态直接显示.

根据内核安全政策,任何能力增加或修改 在版本 REQUIRES 之间,升级时重新同意的提示。 帮手 diffRequiresConsent(diffPermissions(current, next)) 返回时 true 何时 就是这样.. InstallConfirmModal 已在内部使用.

尾风 v4 接线

遵循SDK规则 @source 声明 (单位:千美元)参考文献),消费者 MUST 包含此包的来源 因此组件所使用的工具类 在捆绑地:

/* app.css */
@import 'tailwindcss';
@source "../../node_modules/@asteby/metacore-marketplace/dist";

跳过这个和你的 MarketplaceCatalog 将变成无型.

同伴依赖关系

  • react >= 18
  • react-dom >= 18
  • @tanstack/react-query >= 5
  • @asteby/metacore-app-providers ^7 (可选的——只有您想要 PlatformConfigProvider 驱动市场颜色的品牌变量)

组件使用纯 Tailwind 类加运出 CSS 变量 以 @asteby/metacore-app-providers (单位:千美元)--primary, (中文(简体) ), --background, (中文(简体) ), --border(中文(简体) ). 他们不拉 @asteby/metacore-ui 所以任何主机 更喜欢不同的设计系统仍然可以使用目录,不用目录 额外的道具.

消费者(计划)

  • 行动 —— 说 /marketplace 浏览 + 为 org 管理员安装.
  • 链接 —— 说 /integrations 显示与 流程运行时工具登记册.
  • 管道预设 UI ——通过本包预装的捆绑安装 原始人(下一步).

版本与发布记录

@asteby/metacore-marketplace 共发布 152 个版本,首次发布于 2026/05/28;过去 12 个月发布了 152 个版本。

版本发布日期距今
153.1.0latest2026/10/2118 天前
153.0.02026/10/1820 天前
152.0.02026/10/1821 天前
151.0.02026/10/1524 天前
150.0.02026/10/1424 天前
149.0.02026/10/1425 天前

关于 @asteby/metacore-marketplace 的常见问题

@asteby/metacore-marketplace 是什么?

元核心市场 SDK——枢纽目录+ Ops安装/升级客户端,React hooks,以及共享于主机应用程序(Ops,链接)的无头UI原始.

如何安装 @asteby/metacore-marketplace?

在项目目录运行 npm install @asteby/metacore-marketplace,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:react(>=18)、react-dom(>=18)、@tanstack/react-query(>=5)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@asteby/metacore-marketplace 支持 TypeScript 吗?

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

@asteby/metacore-marketplace 支持 ESM 还是 CommonJS?

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

@asteby/metacore-marketplace 可以商用吗?

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

@asteby/metacore-marketplace 的下载量有多少?

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

@asteby/metacore-marketplace 还在维护吗?

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