awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com

Go JSON Libraries

Ranking updated Jul 13, 2026

For a high performance JSON library for Go, the first results are bytedance/sonic (Sonic is a high-performance JSON library for Go that utilizes JIT compilation and SIMD instructions to provide fast serialization, streaming support, and AST-based parsing, making it a comprehensive solution for demanding JSON processing tasks), mailru/easyjson (This library is a high-performance JSON processing tool for Go that uses code generation to provide reflection-free marshaling and unmarshaling, directly addressing the need for optimized serialization and memory efficiency) and json-iterator/go (This library is a high-performance, drop-in replacement for the standard Go JSON package that provides the requested streaming support, custom marshaling, and optimized serialization performance). goccy/go-json and tidwall/gjson round out the shortlist. Compare the match explanations and check the project documentation against your requirements.

We curate open-source GitHub repositories matching “best go json libraries”. Results are ranked by relevance to your query — pick filters below to narrow, or refine with AI.

Go JSON Libraries

Find the best repos with AI.We'll search the best matching repositories with AI.
  • bytedance/sonicbytedance avatar

    bytedance/sonic

    9,492View on GitHub↗

    Sonic is a high-performance Go JSON serialization library that provides tools for encoding and decoding native data structures. It functions as a JIT-accelerated encoder, a JSON AST parser, a stream processor, and a lazy decoder. The project utilizes just-in-time machine code generation to optimize the encoding of large data schemas and employs a JIT assembler to maximize serialization and deserialization speeds. It features a precompiled schema warmup process to prevent latency spikes during initial execution and leverages SIMD hardware instructions for accelerated parsing. The library cove

    Sonic is a high-performance JSON library for Go that utilizes JIT compilation and SIMD instructions to provide fast serialization, streaming support, and AST-based parsing, making it a comprehensive solution for demanding JSON processing tasks.

    GoJSON Serialization LibrariesLazy JSON Scanners
    View on GitHub↗9,492
  • mailru/easyjsonmailru avatar

    mailru/easyjson

    4,892View on GitHub↗

    easyjson is a high-performance JSON serializer and memory-optimized parser for Go. It provides a reflectionless code generator that creates static Go methods for marshaling and unmarshaling data, eliminating the need for runtime reflection to improve execution speed. The library reduces CPU and memory overhead through several optimization strategies. It employs a system of reusable memory buffer pools to minimize heap allocations and garbage collection pressure. Additionally, it utilizes string interning to deduplicate repeated values and zero-copy string referencing to point to existing buff

    This library is a high-performance JSON processing tool for Go that uses code generation to provide reflection-free marshaling and unmarshaling, directly addressing the need for optimized serialization and memory efficiency.

    GoReflection-Free Serialization
    View on GitHub↗4,892
  • json-iterator/gojson-iterator avatar

    json-iterator/go

    13,891View on GitHub↗

    This project is a high-performance JSON library for Go, serving as a replacement for the standard encoding/json package. It provides a serialization engine for encoding and decoding data structures, alongside a schemaless parser for extracting specific values from JSON blobs using paths. The library distinguishes itself through a focus on reducing CPU and memory overhead. It implements a high-performance encoder that utilizes buffer reuse and reduced float precision to increase data throughput. Broad capability areas include data serialization, high-performance JSON processing, and schema-le

    This library is a high-performance, drop-in replacement for the standard Go JSON package that provides the requested streaming support, custom marshaling, and optimized serialization performance.

    GoJSON Serialization Libraries
    View on GitHub↗13,891
  • goccy/go-jsongoccy avatar

    goccy/go-json

    3,687View on GitHub↗

    go-json is a high-performance JSON serialization library for Go that serves as an encoder and decoder replacement for the standard library. It provides tools to convert native data structures to and from JSON format with optimized processing speeds. The library includes a conditional serializer for filtering specific data structure fields during the encoding process and a colorizer to produce color-coded JSON strings for human readability. The project supports context-aware marshaling to trigger specific logic during the serialization of complex data types.

    This library is a high-performance, drop-in replacement for the standard Go JSON package that provides the requested streaming support, custom marshaling, and optimized serialization features.

    GoHigh-Performance JSON EncodersGo JSON LibrariesConditional Serializers
    View on GitHub↗3,687
  • tidwall/gjsontidwall avatar

    tidwall/gjson

    15,521View on GitHub↗

    gjson is a Go JSON parser designed for schema-less reading and value extraction. It allows for the retrieval of specific data from JSON documents using dot-notation paths without requiring the definition of predefined Go structs. The library provides tools for path-based querying, including the use of wildcards and index-based queries to locate data within objects and arrays. It also functions as a JSON lines processor, treating multi-line documents as arrays to iterate and query individual entries. Additional capabilities include converting JSON values into native Go types such as strings,

    This library provides high-performance, zero-copy JSON parsing and path-based value extraction, making it a powerful tool for Go developers who need to query JSON data without the overhead of full struct unmarshaling.

    GoJSON Path NavigationJSONJSON Data Parsers
    View on GitHub↗15,521
  • buger/jsonparserbuger avatar

    buger/jsonparser

    5,629View on GitHub↗

    jsonparser is a Go library for parsing, extracting, and modifying JSON data by key path without requiring predefined structs or type schemas. It uses a deterministic state machine to parse JSON directly from byte slices, enabling zero-copy traversal and lazy typed value extraction. The library provides key-path-based navigation to retrieve raw bytes and typed values from nested JSON structures, supporting extraction of strings, integers, floats, and booleans. It also enables in-place value modification and deletion at specified key paths, as well as iteration over arrays and objects using cal

    This library provides high-performance, zero-copy JSON parsing and extraction for Go by operating directly on byte slices without the need for reflection or predefined structs.

    GoJSON ParsersSchema-Free ParsersJSON Byte Range Modifiers
    View on GitHub↗5,629
  • bitly/go-simplejsonbitly avatar

    bitly/go-simplejson

    3,743View on GitHub↗

    go-simplejson is a JSON manipulation library for Go that provides schemaless parsing and modification of arbitrary JSON data. It serves as a wrapper for interacting with JSON structures without requiring the definition of predefined structs or schemas. The library enables dynamic processing of JSON payloads through a recursive tree structure and a mutable node hierarchy. This allows for the extraction and modification of values from complex, nested objects where the data format may be unknown or change dynamically. The project covers arbitrary JSON parsing and the retrieval of data from dyna

    This library provides a convenient way to interact with arbitrary or dynamic JSON structures in Go without needing predefined structs, though it prioritizes ease of use over the high-performance, reflection-free parsing required for heavy-duty serialization tasks.

    GoRecursive JSON Value TreesGo JSON LibrariesJSON Parsers
    View on GitHub↗3,743
  • jeffail/gabsJeffail avatar

    Jeffail/gabs

    3,528View on GitHub↗

    For parsing, creating and editing unknown or dynamic JSON in Go

    This library provides a flexible way to parse and manipulate dynamic or unknown JSON structures in Go, making it a useful tool for scenarios where you need to work with JSON without predefined schemas.

    GoJSON Processing
    View on GitHub↗3,528
  • pquerna/ffjsonpquerna avatar

    pquerna/ffjson

    2,994View on GitHub↗

    faster JSON serialization for Go

    This library provides high-performance JSON serialization for Go by generating static code to avoid runtime reflection, directly addressing the need for faster processing.

    GoData SerializationJSON Processing
    View on GitHub↗2,994
  • valyala/fastjsonvalyala avatar

    valyala/fastjson

    2,458View on GitHub↗

    Fast JSON parser and validator for Go. No custom structs, no code generation, no reflection

    This library provides a high-performance, reflection-free approach to parsing and validating JSON in Go, making it a strong choice for performance-critical applications that prefer manual data access over struct-based marshaling.

    GoJSON Processing
    View on GitHub↗2,458
  • gogo/protobufgogo avatar

    gogo/protobuf

    5,669View on GitHub↗

    This project is a Protocol Buffers Go compiler and code generation framework that translates schema definitions into optimized Go structures and reflection-free serialization methods. It includes a gRPC service generator for producing client and server communication code and a serialization performance toolkit for generating automated benchmarks and test suites. The framework features a plugin-based system for transforming data definitions into source code with custom field mapping and struct tag injection. It allows for custom type mapping and struct type overriding to link data fields to sp

    This project is a Protocol Buffers compiler and code generation framework for RPC communication, which is a different serialization format than the JSON processing library requested.

    GoReflection-Free SerializationCompile-Time Code Generation
    View on GitHub↗5,669
  • jqlang/jqjqlang avatar

    jqlang/jq

    34,901View on GitHub↗

    This project is a command-line processor designed for the parsing, filtering, and transformation of structured data streams. It functions as a declarative programming environment that treats data as immutable streams, allowing users to perform complex structural modifications through the composition of small, reusable functions. By utilizing a recursive tree traversal engine, the system enables the navigation, inspection, and modification of deeply nested hierarchical data structures. The engine distinguishes itself through a stream-oriented architecture that processes input records one by on

    This is a command-line tool written in C for processing JSON data, rather than a Go library that can be integrated into your application for parsing and serialization.

    CLarge Data Streamers
    View on GitHub↗34,901
Compare the top 10 at a glance
RepositoryStarsLanguageLicenseLast push
bytedance/sonic9.5KGoApache-2.0Jun 4, 2026
mailru/easyjson4.9KGoMITMar 14, 2026
json-iterator/go
13.9K
Go
MIT
May 27, 2024
goccy/go-json3.7KGoMITMar 20, 2026
tidwall/gjson15.5KGoMITMay 14, 2026
buger/jsonparser5.6KGoMITMay 3, 2026
bitly/go-simplejson3.7KGoMITApr 8, 2024
jeffail/gabs3.5KGoMITJun 6, 2024
pquerna/ffjson3KGoApache-2.0Sep 21, 2023
valyala/fastjson2.5KGoMITFeb 21, 2026

Related searches

  • a high performance JSON library for Java
  • a high performance serialization library for Go
  • a high performance JSON parsing library
  • a high performance JSON library for C#
  • a lightweight json library for C++
  • a JSON processor and query tool for the command line
  • a high performance web framework for Go
  • a structured logging library for Go