@dirwell/core

中文文档
0.0.10发布于 2026/10/16MITTypeScriptES Module构建来源已验证近 30 天下载 2383

框架中立目录列表和静态发布内核.

中文使用文档
文档目录3 节
  1. 稳定运行时间验证
  2. 目录 URL
  3. 可选字节格式化

@ dirwell/ 核心

框架中立文件系统,上市和静态发布SDK. 需要22.12节节点或更新。 为了这个快速开始,安装 npm install @dirwell/[email protected] @dirwell/[email protected]。 。 。 .

Core拥有文件系统选择,安全导航,公开上市投影和静态发布. 它需要一个明确的主题,并且不装入默认的主题,图像渲染器,前端框架,配置加载器或监视器. 运行时匹配使用 picomatch 来进行 globs 并忽略 Git 风格忽略文件 .

import { generateExplorer } from "@dirwell/core";
import { createPlainTheme } from "@dirwell/theme-plain";
await generateExplorer({
  sourceDir: "./files",
  outputDir: "./generated",
  theme: createPlainTheme(),
});
console.log("Generated ./generated");

创建 files/note.txt代码保存为 build.mjs 运行 node build.mjs。通过 HTTP 完成完整的输出.

稳定控制 : ignoreFiles 默认为 [];除非标记可选,否则必须存在明确的文件。 相对路径从 cwd 解析,模式从每个文件目录解析,除非 baseDir 已经设定. outputPolicy: "owned" 保护非空无标记目的地; 明确 "replace" 许可证替换. dryRun: true 返回选定的路径和页面计划,而不写入输出。 见 API 指南。 。 。 .

generateExplorer 发布专用输出树. listing 独立规划 HTML 页面和数据块; 同步调用可以选择每个目录的计划. 元数据渲染是一个被注入的节点侧提供商. createDirectoryService 执行活的,单行本读取而不写出生成的树. 有了过滤器,选择仍然行走物理名称以保留子孙的包容;这不是一个不断成本的索引数据库查询.

该服务拒绝点段,绝对路径,回击,保留根路径和物理根外的路径. Symlink元数据保留了已声明的目标行为. 节点边条目是私人输入; 使用 projectListingEntry 在公开系列化之前。 读取不是交易文件系统快照,不具有对抗性同时替换目录的资格.

稳定还增加了经验证的公众 entryData 说明和静态 fileHref 对已存在的 CDN 文件进行映射 。 见 API 指南 用于调用时间和公共数据边界.

稳定运行时间验证

JavaScript呼叫器接收与打入的消费者相同的识别选项检查:未知的密钥,无效的布林克/enum和畸形排序,同名链接或上市计划在发布出稿前失败. 错误指定完整选项路径并推荐最接近已知的密钥 。 譬如说, exlcude 驳回,但建议 exclude· ; mirror: "false" 被否定,而不是作为真理对待。 上市政策回调在目录检查后进行,其退回的计划在产出替换前经过验证.

自定义主题对象可能携带额外的私有字段 。 他们所要求的名称/交接和已知的钩子必须与主题合同相匹配. 元数据和注释回调仍然是可执行的主机代码,在公共合同同步的情况下等待。 这些控制包括在 0.0.1。 。 。 .

0.0.x API可能会进化. 把你的合格版本绑起来 一起升级正式家庭 见 支助和核查 用于主机、浏览器和设备边界.

目录 URL

0.0.3版本使用核心 routing: { directoryUrls: "explicit" } 默认 每个主题。 选择 slash 用于目录索引主机或 clean (单位:千美元) 符合条件的无扩展主机。 主题不重写链接 。 现有来源 主页和下载名称保存;输出冲突失败。 CLI 配置 将路由设置在顶层 --directory-urls 超过它. 见 目录 URL 指导 用于产出 放置、主机要求、本地 Plain 文件导航和迁移.

可选字节格式化

主题收到原始字节数 。 仅在有用时使用浏览器安全程序 :

import { formatBytes, sizeValue } from "@dirwell/core/format";

formatBytes(1536); // "1.5 KiB"
formatBytes(1536, { units: "decimal" }); // "1.54 kB"
formatBytes(1536, { units: "bytes" }); // "1,536 B"

formatBytes 接受 units, (中文(简体) ), locale (默认) en-US)和可选 maximumFractionDigits 从0到6。 转换的数值否则使用最多3个 数字 字节仍为正整数. 无效或不安全的字节数 扔出; 格式化前处理缺失值.

sizeValue(entry) 选择正则文件的字节或允许的同位链接目标 文件字节。 它回来了 null 用于不可用的目标和目录. sizeValue(entry, "entry") 选择条目的自有字节,包括链接的自有字节 尺寸。 它从不计算目录内容. 独立主题可能忽略两者 帮助和格式化原字段本身.

大小排序是明确的 : sort.field: "size" 比较条目大小; "targetSize" 比较链接的目标文件大小。 缺失/不可比较值 排序后任意方向的数值,以文件夹为准.

版本与发布记录

@dirwell/core 共发布 13 个版本,首次发布于 2026/10/13;过去 12 个月发布了 13 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.0.10latest2026/10/1628 天前
0.0.92026/10/1628 天前
0.0.82026/10/1628 天前
0.0.72026/10/1628 天前
0.0.62026/10/1628 天前
0.0.52026/10/1628 天前

其他发布通道:alpha → 0.0.1-alpha.1。

关于 @dirwell/core 的常见问题

@dirwell/core 是什么?

框架中立目录列表和静态发布内核.

如何安装 @dirwell/core?

在项目目录运行 npm install @dirwell/core,或使用 pnpm add / yarn add / bun add。

@dirwell/core 支持 TypeScript 吗?

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

@dirwell/core 支持 ESM 还是 CommonJS?

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

@dirwell/core 需要什么版本的 Node.js?

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

@dirwell/core 可以商用吗?

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

@dirwell/core 的下载量有多少?

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

@dirwell/core 还在维护吗?

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