Logo of confbox

confbox

紧凑高质量的 YAML、TOML、JSONC 和 JSON5 解析器。

配置解析器,支持

YAML (使用 js-yaml

TOML (使用 smol-toml

JSONC (使用 jsonc-parser

JSON5 (使用 json5

具备出色的打包能力

✨ 开箱即用的类型导出

✨ 零配置和轻量级分发

✨ 双 ESM/CJS 构建

✨ 一致且经过测试的 API

✨ 精选的优秀库(打包和性能优化)

使用 unjs/c12 以获取功能完善的配置加载器!

用法

安装包

# ✨ Auto-detect
npx nypm i confbox

# npm
npm install confbox

# yarn
yarn add confbox

# pnpm
pnpm install confbox

# bun
bun install confbox

导入

ESM (Node.js, Bun)

import {
  parseJSON5,
  parseJSONC,
  parseYAML,
  stringifyYAML,
  parseTOML,
} from "confbox";

CommonJS (旧版 Node.js)

const {
  parseJSON5,
  parseJSONC,
  parseYAML,
  stringifyYAML,
  parseTOML,
} = require("confbox");

CDN (Deno, Bun 和 浏览器)

import {
  parseJSON5,
  parseJSONC,
  parseYAML,
  stringifyYAML,
  parseTOML,
} from "https://esm.sh/confbox";

parseJSON5(text, options?)

JSON5 字符串转换为对象。

parseJSONC(text, options?)

JSONC 字符串转换为对象。

parseTOML(text)

TOML 字符串转换为对象。

parseYAML(text, options?)

YAML 字符串转换为对象。

stringifyYAML(value, options?)

将 JavaScript 值转换为 YAML 字符串。

贡献

本地开发
  • 克隆此仓库
  • 安装最新 LTS 版本的 Node.js
  • 使用 Corepack 通过运行 corepack enable
  • 使用 pnpm install 安装依赖项
  • 通过运行 pnpm devpnpm test 来运行测试

许可

根据 MIT 许可证发布。由 @pi0社区 💛 制作