Registry / devops / jsonshrinkify

jsonshrinkify

JSON →
library1.0.1jsnpmunverified

Ultra-fast TypeScript JSON minifier and sanitizer for React apps, APIs and browser delivery. Version 1.0.1. Active development. Provides minification, sanitization, normalization, validation, streaming, worker and WASM support. Zero runtime dependencies. Ships TypeScript types. Differentiates by combining minification with sanitization, circular reference handling, byte savings reporting, and multiple entry points for browser, Node, workers, and WASM.

npm install jsonshrinkify
INSTALL
IMPORT
SIG · JSONSHRINKIFY
J
jsonshrinkify
devopsjavascriptv1.0.1
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

minifyJson
import { minifyJson } from 'jsonshrinkify'
const minifyJson = require('jsonshrinkify')
ESM-only since v1.
shrinkJson
import { shrinkJson } from 'jsonshrinkify'
import shrinkJson from 'jsonshrinkify'
Named export, not default.
stringifyJson
import { stringifyJson } from 'jsonshrinkify'
Supports sanitization, stable keys, circular handling.
minifyJson (browser)
import { minifyJson } from 'jsonshrinkify/browser'
import { minifyJson } from 'jsonshrinkify'
Browser-specific entry for lighter bundle.

Demonstrates minification of JSON strings and objects, byte savings reporting, and sanitization options.

import { minifyJson, shrinkJson } from 'jsonshrinkify'; const input = JSON.stringify({ name: 'jsonshrinkify', version: 1, enabled: true }); const minified = minifyJson(input); console.log(minified); // {"name":"jsonshrinkify","version":1,"enabled":true} const result = shrinkJson(input); console.log(`Saved ${result.savedPercent}%`); // Shows byte savings // From object const obj = { app: 'jsonshrinkify', version: 1, enabled: true }; console.log(minifyJson(obj)); // Sanitize with options import { stringifyJson } from 'jsonshrinkify'; const unsafe = { value: undefined, bad: NaN }; console.log(stringifyJson(unsafe, { sanitize: true, circular: 'null' })); // {"bad":null}
Debug
Known issues
gotchaMust use Node >= 18 due to ESM-only distribution.
fix
Upgrade Node.js to version 18 or later, or use a bundler that supports ESM.
affects: >=1.0
gotchaBrowser entry requires import from 'jsonshrinkify/browser', not top-level package.
fix
Use import { minifyJson } from 'jsonshrinkify/browser' for browser builds.
affects: >=1.0
breakingThe package is ESM-only, so require() will fail with a runtime error.
fix
Use ES import syntax (import/export) instead of CommonJS require().
affects: >=1.0
gotchaDefault import not available; all exports are named.
fix
Use named imports like import { minifyJson } from 'jsonshrinkify'.
affects: >=1.0
Errors
Common errors & fixes
Error [ERR_REQUIRE_ESM]: require() of ES Module
Package is ESM-only; using require() throws.
fix
Replace require('jsonshrinkify') with import { minifyJson } from 'jsonshrinkify'.
TypeError: minifyJson is not a function
Incorrect default import instead of named import.
fix
Use import { minifyJson } from 'jsonshrinkify' instead of import minifyJson from 'jsonshrinkify'.
Module not found: Can't resolve 'jsonshrinkify/browser'
Using browser entry without proper bundler configuration (e.g., resolve.alias).
fix
Configure your bundler to resolve 'jsonshrinkify/browser' as a valid module path; in Webpack add resolve.alias: { 'jsonshrinkify/browser': 'jsonshrinkify/dist/browser/index.js' }
Upgrade
Version history
1.0.1latest on npm
Audit
Dependencies
typescriptoptionalType definitions depend on TypeScript for type checking.
Agent activity
5 hits · last 30 days
node
4
Resources
jsonshrinkify — npm install jsonshrinkify · libregistry