A powerful and efficient JavaScript/TypeScript utility library for JSON manipulation and operations.
npm install es-jsonkit




A powerful and efficient JavaScript/TypeScript utility library for JSON manipulation and operations.
es-json provides a comprehensive set of utilities for working with JSON data, including:
- JSON Correction: Automatically fix malformed JSON strings
- JSON Merging: Deep merge multiple JSON objects with customizable strategies
- JSON Transformation: Transform and manipulate JSON structures
- Performance Optimized: Built for high-performance JSON operations
``bash`
npm install es-json
`javascript
import { addMissingBraces, removeEmptyObjectPrefix, removeTrailingCommas } from 'es-json';
// Fix missing closing braces
const fixedBraces = addMissingBraces('{"key": "value"');
// Result: '{"key": "value"}'
// Remove empty object prefixes
const cleaned = removeEmptyObjectPrefix('{}{"key": "value"}');
// Result: '{"key": "value"}'
// Remove trailing commas
const validJson = removeTrailingCommas('{"key": "value",}');
// Result: '{"key": "value"}'
`
#### addMissingBraces(input: string): string
Automatically adds missing closing braces and brackets to malformed JSON strings. Handles nested structures and fixes mismatched braces.
`javascript`
addMissingBraces('{"users": [{"name": "John"');
// Returns: '{"users": [{"name": "John"}]}'
#### removeEmptyObjectPrefix(json: string): string
Removes empty object prefixes ({}) from JSON strings that may have been corrupted with leading empty objects.
`javascript`
removeEmptyObjectPrefix('{}{"valid": "data"}');
// Returns: '{"valid": "data"}'
#### removeTrailingCommas(json: string): string
Removes trailing commas from JSON objects and arrays to make them valid JSON. Properly handles commas inside strings.
`javascript`
removeTrailingCommas('{"key": "value", "array": [1, 2, 3,],}');
// Returns: '{"key": "value", "array": [1, 2, 3]}'
- ๐ High Performance: Optimized for speed and memory efficiency
- ๐ก๏ธ Type Safe: Full TypeScript support with comprehensive type definitions
- ๐งช Well Tested: Comprehensive test coverage with Vitest
- ๐ Well Documented: Detailed API documentation and examples
- ๐ง Flexible: Customizable options for various use cases
- โก Modern Tooling: Built with TypeScript, tested with Vitest, linted with oxlint
- Node.js 18+
- npm
`bashClone the repository
git clone
cd es-json
$3
-
npm test - Run Vitest tests in watch mode
- npm run test:run - Run tests once
- npm run test:coverage - Run tests with coverage report
- npm run test:watch - Run tests in watch mode
- npm run lint - Run oxlint to check code quality
- npm run lint:fix - Auto-fix linting issues
- npm run build - Build TypeScript to JavaScript
- npm run release` - Create a new release with bumppWe welcome contributions! Please see our contributing guidelines for more information.
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
See CHANGELOG.md for a detailed history of changes.
---
Note: This library is actively under development. The API may change before the first stable release.