json-streaming-parser

1.0.4 • Public • Published

🚀 JSON Streaming Parser

npm version Downloads License PRs Welcome

A high-performance streaming JSON parser that handles JSON like a pro! Perfect for parsing large JSON objects efficiently, with real-time partial object emission. Built with robustness in mind, it can handle malformed JSON like a champ - whether it's missing commas, wrong formatting, or even JSON written by a very enthusiastic monkey! 🐒

✨ Features

  • 🌊 Stream processing of large JSON data
  • 🛠️ Fault-tolerant parsing of malformed JSON
  • 🏃‍♂️ Real-time partial object updates
  • 💪 Robust error handling
  • 🎯 Zero dependencies
  • 📦 Lightweight (~5KB minified)
  • 🔒 Type-safe with TypeScript definitions
  • 🚦 Event-based architecture

🔧 Installation

npm install json-streaming-parser
# or
yarn add json-streaming-parser
# or
pnpm add json-streaming-parser

📚 Usage

Online HTML Demo

Online HTML Demo

Basic Example

import { JSONStreamingParser } from 'json-streaming-parser';

try {
  const parser = new JSONStreamingParser();
  
  parser.on('updateObject', (partialObject) => {
    console.log('Got partial data:', partialObject);
  });

  // Feed data chunks as they arrive
  parser.write('{"name": "John", ');
  parser.write('"age": 30, ');
  parser.write('"city": "New York"}');
  parser.end();
} catch (error) {
  console.error('Parser error:', error);
}

🔍 Advanced Features

Event System

  • updateObject: Emitted when partial objects are parsed
  • error: Handling parsing errors
  • end: Stream completion
  • timeout: Parser timeout events
  • progress: Parsing progress updates

🎯 Performance

Benchmarks run on Node.js 18.x, processing 1GB JSON file:

Parser Memory Usage Processing Time
JSON Streaming Parser ~50MB 2.3s
JSON.parse() ~1.2GB 4.1s
Other Streaming Parser ~120MB 3.5s

🤝 Contributing

We love contributions! Here's how you can help:

  1. 🐛 Report bugs
  2. 💡 Suggest features
  3. 📝 Improve documentation
  4. 🔧 Submit PRs

Check our Contributing Guide for details.

📄 License

This project is licensed under the MIT License.

🏢 About Hubeet

Hubeet

AI Integration Platform

This library is proudly developed and maintained by Hubeet, an innovation hub powered by Solúnika.

At Solúnika, we specialize in:

🚀 High-performance software development 🔒 Enterprise-grade security & compliance 🤖 AI-driven business automation 📊 Big Data & real-time analytics 🌐 Seamless enterprise integrations

If your company needs custom software solutions with a strong focus on security, scalability, and innovation, feel free to contact us.

🌟 Star Us!

If you find this library helpful, please give it a star! It helps others discover this solution.


Made with ❤️ by Solúnika & Hubeet

Package Sidebar

Install

npm i json-streaming-parser

Weekly Downloads

10

Version

1.0.4

License

MIT

Unpacked Size

20.2 kB

Total Files

4

Last publish

Collaborators

  • gabenitez