# @cfp-studio/core 中文文档

规范地址：https://npmcn.com/package/%40cfp-studio/core/

版本：1\.0\.15
npm 元数据更新时间：2026-11-10T02:13:50.362Z
中文译文更新时间：2026-11-10T09:37:32.754Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40cfp-studio/core
原文对照：https://npmcn.com/package/%40cfp-studio/core/?lang=original

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：56 kB，5 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- Node.js 要求：\>=22\.19\.0
- 运行依赖：22 个
- 首次发布：2025-05-19T02:50:57.699Z
- 最新版本发布：2026-11-10T02:13:50.131Z
- 近 30 天下载量：1787（2026-10-10 至 2026-11-08，npm 官方下载统计）
- 已发布版本数：15（近 12 个月 12 个）

## 中文简介

CFP Studio 的核心运行时与服务编排包，负责组件/Story 静态分析、预览服务、插件架构、Vite 集成、API 路由、依赖管理等。是整个 monorepo 的中枢和 glue 层。

## 安装

```sh
npm install @cfp-studio/core
```

也可以使用：`pnpm add @cfp-studio/core`、`yarn add @cfp-studio/core`、`bun add @cfp-studio/core`

## README

# @cfp-studio/core

CFP Studio 的核心运行时与服务编排包，负责组件/Story 静态分析、预览服务、插件架构、Vite 集成、API 路由、依赖管理等。是整个 monorepo 的中枢和 glue 层。

* * *

## 架构与工作原理

### 1\. 预览服务与中间件

-   启动 Express/Vite 组合服务，自动托管前端产物与 API。
-   支持自定义中间件（如 inspector、静态资源、CORS、API 路由等）。
-   通过 `Previewer` 类统一管理服务生命周期、端口、热重载、缓存等。

### 2\. 插件化框架支持

-   通过 `FrameworkPluginFactory`/`FrameworkPlugin` 接口，支持多框架（React/Vue/Svelte/Solid/Preact 等）插件热插拔。
-   插件可自定义类型分析、依赖检测、Vite 配置、特殊文件处理等。
-   自动检测项目依赖，动态选择兼容插件。

### 3\. 组件/Story 静态分析

-   集成 `@cfp-studio/analyzer-api`，支持 TS/JSX 组件、Story、属性、类型、propTypes 等静态分析。
-   支持批量文件爬取、缓存、依赖追踪、增量分析。
-   统一可预览 ID 生成与解析，便于前后端通信。

### 4\. Vite 深度集成与虚拟文件

-   内置多种 Vite 插件（如虚拟文件、CSS modules、inspector、public asset import、local eval 等）。
-   支持虚拟文件系统（VFS），可动态生成/注入模块。
-   自动处理 alias、tsconfig 路径、全局样式、热重载等。

### 5\. API 路由与远程调用

-   内置 `ApiRouter`，支持类型安全的 RPC 路由与分发。
-   支持插件/服务注册自定义 RPC 端点。
-   统一错误处理与日志。

### 6\. 缓存与依赖管理

-   自动管理缓存目录，支持多版本隔离。
-   支持依赖包版本检测、动态加载、兼容性校验。

* * *

## 主要 API/模块

-   `Previewer`：预览服务主类
-   `FrameworkPluginFactory`/`FrameworkPlugin`：插件接口
-   `crawlFiles`/`findFiles`：批量文件爬取与查找
-   `ApiRouter`：RPC 路由
-   `ViteManager`：Vite 服务与插件集成
-   `getCacheDir`：缓存目录管理
-   `extractPackageDependencies`：依赖检测
-   `toVitePath`：路径工具

## 用法示例

```ts
import { Previewer, findCompatiblePlugin } from "@cfp-studio/core";
const plugin = await findCompatiblePlugin({ rootDir: "/project" });
const previewer = new Previewer({
    rootDir: "/project",
    frameworkPlugin: plugin,
    // ...其他参数
});
await previewer.start();
```

## 依赖

-   `@cfp-studio/analyzer-api`、`@cfp-studio/api`、`@cfp-studio/fiber-reader`、`@cfp-studio/iframe`、`@cfp-studio/type-analyzer`、`@cfp-studio/vfs`
-   `express`、`vite`、`pino`、`fs-extra`、`axios`、`zod` 等

## 构建

```sh
pnpm build
```

## 许可证

MIT

## 常见问题

### @cfp-studio/core 是什么？

CFP Studio 的核心运行时与服务编排包，负责组件/Story 静态分析、预览服务、插件架构、Vite 集成、API 路由、依赖管理等。是整个 monorepo 的中枢和 glue 层。

### 如何安装 @cfp-studio/core？

在项目目录运行 npm install @cfp-studio/core，或使用 pnpm add / yarn add / bun add。

### @cfp-studio/core 支持 TypeScript 吗？

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

### @cfp-studio/core 支持 ESM 还是 CommonJS？

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

### @cfp-studio/core 需要什么版本的 Node\.js？

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

### @cfp-studio/core 可以商用吗？

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

### @cfp-studio/core 的下载量有多少？

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

### @cfp-studio/core 还在维护吗？

最新版本 1\.0\.15 发布于 2026/11/10（今天）；至今共发布 15 个版本，其中过去 12 个月发布了 12 个；首次发布于 2025/05/19。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

