JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 13660009
  • Score
    100M100P100Q219898F

Package Exports

    This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (confbox) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

    Readme

    confbox

    npm version npm downloads bundle size install size

    Parsing and serialization utils for YAML (js-yaml), TOML (smol-toml), JSONC (jsonc-parser), JSON5 (json5), INI (ini) and JSON.

    ✨ Zero dependency and tree-shakable

    ✨ Types exported out of the box

    ✨ Preserves code style (indentation and whitespace)

    [!TIP] Use unjs/c12 for a full featured configuration loader!

    Usage

    Install package:

    # ✨ Auto-detect
    npx nypm install confbox
    
    # npm
    npm install confbox
    
    # yarn
    yarn add confbox
    
    # pnpm
    pnpm install confbox
    
    # bun
    bun install confbox
    
    # deno
    deno install confbox

    Import:

    ESM (Node.js, Bun, Deno)

    import {
      parseJSON5,
      stringifyJSON5,
      parseJSONC,
      stringifyJSONC,
      parseYAML,
      stringifyYAML,
      parseJSON,
      stringifyJSON,
      parseTOML,
      stringifyTOML,
      parseINI,
      stringifyINI,
    } from "confbox";

    CDN (Deno, Bun and Browsers)

    import {
      parseJSON5,
      stringifyJSON5,
      parseJSONC,
      stringifyJSONC,
      parseYAML,
      stringifyYAML,
      parseJSON,
      stringifyJSON,
      parseTOML,
      stringifyTOML,
      parseINI,
      stringifyINI,
    } from "https://esm.sh/confbox";

    parseINI(text, options?)

    Converts an INI string into an object.

    Note: Style and indentation are not preserved currently.

    parseJSON(text, options?)

    Converts a JSON string into an object.

    Indentation status is auto-detected and preserved when stringifying back using stringifyJSON

    parseJSON5(text, options?)

    Converts a JSON5 string into an object.

    parseJSONC(text, options?)

    Converts a JSONC string into an object.

    parseTOML(text)

    Converts a TOML string into an object.

    parseYAML(text, options?)

    Converts a YAML string into an object.

    stringifyINI(value, options?)

    Converts a JavaScript value to an INI string.

    Note: Style and indentation are not preserved currently.

    stringifyJSON(value, options?)

    Converts a JavaScript value to a JSON string.

    Indentation status is auto detected and preserved when using value from parseJSON.

    stringifyJSON5(value, options?)

    Converts a JavaScript value to a JSON5 string.

    stringifyJSONC(value, options?)

    Converts a JavaScript value to a JSONC string.

    stringifyTOML(value)

    Converts a JavaScript value to a TOML string.

    stringifyYAML(value, options?)

    Converts a JavaScript value to a YAML string.

    Contribution

    Local development
    • Clone this repository
    • Install the latest LTS version of Node.js
    • Enable Corepack using corepack enable
    • Install dependencies using pnpm install
    • Run tests using pnpm dev or pnpm test

    License

    Published under the MIT license. Made by @pi0 and community 💛


    🤖 auto updated with automd