EsotericSoftware/kryo

Java binary serialization and cloning: fast, efficient, automatic

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 16 minutes ago
Added to GitGenius on September 10th, 2026
Created on November 6th, 2013
Open Issues & Pull Requests: 30 (+0)
GitHub issues: Enabled
Number of forks: 841
Total Stargazers: 6,547 (+0)
Total Subscribers: 276 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 23.6 hours
Mean response time: 77.9 days
90th percentile: 63.1 days
Tracked items: 44

How this project is maintained

Around half of the issues opened in the past year never receive a reply. Only 7% of issues opened in the past year have been closed. Three people close 78% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 9
New in 7 days: 0
Closed in 7 days: 1
Avg open age: 642 days
Stale 30+ days: 8
Stale 90+ days: 3

Recent activity

Opened in 7 days: 0
Closed in 7 days: 1
Comments in 7 days: 1
Events in 7 days: 2

Top labels

  • bug (30)
  • needs repro (15)
  • help wanted (12)
  • feature request (4)
  • kryo 6 (4)
  • question (4)
  • enhancement (2)
  • duplicate (1)

Detailed Description

Kryo is a Java serialization library that provides fast binary serialization and object cloning with minimal configuration.

Kryo addresses the need to convert Java objects to and from binary format efficiently. The library uses a registration-based approach where classes are registered with numeric IDs, enabling compact binary output. It handles serialization automatically for most objects without requiring manual field mapping, and supports both deep cloning of objects and round-trip serialization where objects can be written to bytes and reconstructed identically. The library is designed to minimize the overhead of the serialization process itself, making it suitable for scenarios where performance matters.

Kryo works well for projects that need to persist objects, transmit them over networks, or cache them in memory-efficient form. It suits applications where the performance characteristics of serialization directly impact overall system performance, such as game servers, distributed systems, or high-throughput data processing. The automatic serialization approach means developers spend less time writing boilerplate serialization code compared to manual approaches, though the registration requirement means the set of serializable classes must be known ahead of time.

The project maintains a steady stream of updates addressing bug fixes and compatibility issues. Development activity shows consistent engagement with reported problems and incremental improvements to the codebase. The maintainers respond to issues and incorporate fixes over time, indicating active stewardship of the library.