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
mailru avatar

mailru/easyjson

0
View on GitHub↗
4,892 stars·461 forks·Go·MIT·21 views

Easyjson

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 buffer segments rather than allocating new strings.

The project covers high-performance JSON processing, static code generation, and advanced memory management to optimize the conversion of data between Go structs and JSON.

Features

  • High-Performance JSON Encoders - Provides an optimized implementation for converting Go data structures into JSON text with minimal overhead.
  • JSON-to-Object Mappers - Provides high-performance mapping of JSON text into strongly typed Go structures.
  • Reflectionless Encoders - Provides a tool that generates static methods to avoid runtime reflection during JSON encoding.
  • JSON Serializers - Provides optimized utilities for transforming Go data structures into formatted JSON strings.
  • Reflectionless Code Generators - Ships a tool for creating custom marshaling and unmarshaling functions to eliminate runtime reflection.
  • Marshaling Code Generators - Generates type-specific marshaling functions at build time to avoid runtime reflection.
  • Memory-Efficient Parsing - Minimizes memory overhead during JSON parsing through string interning and buffer pooling.
  • JSON Serializers - Provides a high-performance library for encoding and decoding JSON data in Go without reflection.
  • JSON Memory Optimizations - Implements a parser that reduces allocations through string interning and reusable memory buffer pools.
  • Reflection-Free Serialization - Implements specialized marshaling methods that bypass runtime type inspection for maximum performance.
  • Reflectionless Serialization - Uses compile-time code generation to avoid runtime reflection overhead during JSON serialization.
  • Zero-Copy Parsing - Extracts data from input buffers by returning slices instead of allocating new memory strings.
  • Buffer-Based Memory Management - Uses raw binary buffers to handle JSON data for high-performance memory efficiency and reduced GC.
  • Constant String Referencing - Optimizes memory by referencing existing buffer segments instead of copying strings for short-lived objects.
  • String Deduplication - Reduces memory consumption by storing only one copy of duplicate strings encountered during parsing.
  • Go Performance Optimization - Improves execution speed and reduces memory allocations for Go applications handling high JSON traffic.
  • Schema-Tailored Unmarshaling - Maps JSON fields to struct members using generated logic tailored to the specific data schema.
  • Reusable Buffer Pools - Utilizes recycled memory buffers to minimize heap allocations and garbage collection pressure.
  • JSON Processing - Fast JSON serialization.

Star history

Star history chart for mailru/easyjsonStar history chart for mailru/easyjson

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Projects sharing features with Easyjson

These projects share indexed features with Easyjson. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • ibireme/yyjsonibireme avatar

    ibireme/yyjson

    3,788View on GitHub↗

    yyjson is a high-performance C library for parsing, serializing, and manipulating JSON data structures. It functions as a memory-efficient data tool that utilizes custom memory pools and contiguous block allocation to minimize fragmentation and overhead. The project distinguishes itself as a SIMD JSON processor, using hardware-accelerated vector instructions for rapid string validation and parsing. It provides a toolkit for querying, modifying, and patching nested JSON objects and arrays through pointer-based access and path expressions. The library covers a broad range of data manipulation

    C
    View on GitHub↗3,788
  • json-iterator/javajson-iterator avatar

    json-iterator/java

    1,566View on GitHub↗

    This library is a high-performance JSON processing tool for Java designed to handle data serialization and deserialization with minimal resource consumption. It provides a framework for transforming complex object graphs into JSON strings and mapping raw input directly to typed class properties. The library distinguishes itself by utilizing compile-time code generation and reflection-free mapping to eliminate expensive runtime overhead. By employing iterator-based stream parsing and zero-allocation buffer management, it processes large or deeply nested data structures while reducing garbage c

    Javadeserializationjavajson
    View on GitHub↗1,566
  • square/moshisquare avatar

    square/moshi

    10,138View on GitHub↗

    Moshi is a JSON serialization library and parser for Kotlin and Java. It functions as a reflectionless JSON encoder that converts typed objects to JSON strings and parses JSON data back into language objects. The library distinguishes itself through compile-time adapter generation, which removes the performance overhead associated with runtime reflection. It also provides a polymorphic JSON mapper that uses type identifiers to resolve and instantiate specific subclasses of a common base type. The framework supports custom adapter definitions for specialized type conversion, including nullabi

    Kotlin
    View on GitHub↗10,138
  • 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

    Godeserializationgogolang
    View on GitHub↗13,891
Compare all 30 related projects→

Frequently asked questions

What does mailru/easyjson do?

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.

What are the main features of mailru/easyjson?

The main features of mailru/easyjson are: High-Performance JSON Encoders, JSON-to-Object Mappers, Reflectionless Encoders, JSON Serializers, Reflectionless Code Generators, Marshaling Code Generators, Memory-Efficient Parsing, JSON Memory Optimizations.

Which projects share features with mailru/easyjson?

Projects with overlapping indexed features include: ibireme/yyjson — yyjson is a high-performance C library for parsing, serializing, and manipulating JSON data structures. It functions… json-iterator/java — This library is a high-performance JSON processing tool for Java designed to handle data serialization and… square/moshi — Moshi is a JSON serialization library and parser for Kotlin and Java. It functions as a reflectionless JSON encoder… json-iterator/go — This project is a high-performance JSON library for Go, serving as a replacement for the standard encoding/json… tencent/rapidjson — RapidJSON is a header-only C++ library designed for high-performance parsing, generation, and manipulation of JSON… alibaba/fastjson2 — fastjson2 is a high-performance Java library used for serializing and deserializing Java objects to and from JSON…