stringify-object converts JavaScript objects and arrays into a JSON.stringify-like string, but without double quotes, with optional pretty-print indentation and quote style. It can handle circular references by replacing them with "[Circular]" and supports formatting Maps and Sets, plus options to filter or transform specific properties in the output.
Project status
- Actively maintained, with the latest recorded upstream update on 2025-09-07 (v6.0.0).
- Update cadence appears intermittent, with major updates at v4.0.1 (2022-02-15), v5.0.0 (2023-01-16), and v6.0.0 (2025-09-07), suggesting longer gaps between major changes.
AI summary generated Today
Recent updates
v6.0.0
9 months agov6.0.0 is a major release that raises the minimum supported Node.js version to 20 and adds support for serializing Map and Set. It also includes fixes around escaping and symbol serialization. The code changes go beyond the release notes by adding new type handling and changing how object keys are recognized as valid identifier properties.
BreakingFeaturesv5.0.0
1/16/2023v5.0.0 primarily modernizes the package dependencies and tightens the supported Node.js range. The code change also replaces how enumerable property keys, including symbols, are collected.
Breakingv4.0.1
2/15/2022v4.0.1 updates stringify-object to fix improper string escaping. The release notes describe a general escaping fix, and the code and tests show targeted changes to how backslashes and single quotes are escaped.
v4.0.0
8/22/2021v4.0.0 is a major release that converts stringify-object to a pure ESM package and tightens supported Node.js versions. The code diff shows an ESM rewrite (default export, ESM imports) plus dependency upgrades and corresponding ESM-focused test/README updates.
Breakingv3.3.0
10/16/2018Release v3.3.0 primarily addresses a TypeScript-related issue and upgrades dependencies. The code diff is very small, with one runtime change in `index.js` and corresponding test adjustments, plus a `get-own-enumerable-property-symbols` major version bump.
v3.2.2
2/5/2018v3.2.2 is a small maintenance release with a targeted fix related to the `filter` option when stringifying objects. The change affects how filtered-out properties are handled during serialization, improving output correctness.
v3.2.1
9/23/2017v3.2.1 is described as a small fix for a broken dependency. The code diff shows the main runtime change is an import adjustment for get-own-enumerable-property-symbols after a dependency major version bump, plus several maintenance changes to the test toolchain and repository configuration.
v3.2.0
3/15/2017Release 3.2.0 introduces a new optional `transform` hook to customize how stringified values are emitted during serialization. The code applies this hook when processing both array elements and object property values, passing the container, the property/index key, and the original stringified result.
Featuresv3.1.1
1/27/2017Release v3.1.1 contains a fix for how stringify-object escapes single quotes when the input already contains escape characters (pre-escaped quotes). The code change adjusts the escaping logic and updates the related test expectation.
v3.1.0
11/24/2016v3.1.0 adds support for serializing JavaScript Symbols. The implementation extends object key handling to include enumerable symbol properties and adds explicit handling for symbol primitive values.
Features