A high-performance, zero-allocation JSON iterator and validator for Go, focused on efficient scanning and validation.
jscan is a high-performance JSON iterator and validator library for Go. It enables zero-allocation scanning of JSON data with on-the-fly validation, focusing on efficient iteration over JSON structures without providing marshaling or unmarshaling capabilities. It solves the need for fast, memory-efficient JSON processing in performance-critical applications.
Go developers working with high-throughput JSON data processing, such as in APIs, data pipelines, or real-time systems where performance and low memory overhead are essential.
Developers choose jscan for its exceptional speed and zero-allocation design, which reduces garbage collection pressure and improves efficiency in JSON scanning tasks compared to standard Go JSON libraries.
High performance JSON iterator & validator for Go
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Iterates over JSON data without heap allocations, optimizing performance and reducing garbage collection overhead as emphasized in the README's key features.
Validates JSON syntax during iteration, ensuring compliance with RFC 8259 standards and tested against the comprehensive JSONTestSuite.
Benchmarked for speed in dedicated repositories like jscan-benchmark, making it suitable for high-throughput JSON processing tasks.
Provides detailed access to JSON elements through a callback-based iterator, allowing inspection of keys, array indices, value types, and nesting levels.
Lacks built-in Marshal/Unmarshal capabilities, requiring custom code for JSON-to-struct conversion, as admitted in the README with plans for future versions.
The iterator uses a callback function, which can be less intuitive and more cumbersome for linear parsing compared to standard streaming APIs.
As a newer, performance-focused library, it has a smaller community and fewer integrations than established options like encoding/json.