apache/fory

A blazingly fast multi-language serialization framework for idiomatic domain objects, schema IDL, and cross-language data exchange.

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 14 minutes ago
Added to GitGenius on September 15th, 2026
Created on April 28th, 2023
Open Issues & Pull Requests: 61 (+4)
GitHub issues: Enabled
Number of forks: 448
Total Stargazers: 4,554 (+0)
Total Subscribers: 48 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 10.5 hours
Mean response time: 52.4 days
90th percentile: 85.9 days
Tracked items: 830

Most active contributors

Sign in to see contributor activity.

How this project is maintained

Practically every issue opened in the past year has drawn a reply. 47% of open issues come from outside the core team, a mix of external reports and the maintainers' own roadmap. Work labelled "question" is answered fastest, typically in about 3 hours, while "java" waits about 2 weeks. 95% of issues opened in the past year have since been closed. Three people close 92% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 32
New in 7 days: 6
Closed in 7 days: 14
Avg open age: 330 days
Stale 30+ days: 24
Stale 90+ days: 20

Recent activity

Opened in 7 days: 6
Closed in 7 days: 14
Comments in 7 days: 1
Events in 7 days: 18

Top labels

  • bug (255)
  • enhancement (209)
  • question (82)
  • good first issue (53)
  • java (44)
  • rust (23)
  • compiler (22)
  • python (22)

Detailed Description

Apache Fory is a multi-language serialization framework that enables fast, compact binary encoding of domain objects across Java, Python, C++, Go, Rust, JavaScript, and other supported languages.

Fory addresses the problem of efficiently exchanging structured data between systems written in different languages while preserving object semantics. It works directly with idiomatic domain objects in each language—Java classes, Python dataclasses, Go structs, Rust structs—rather than forcing users into wrapper types. The framework uses a schema IDL that supports shared and circular references, allowing developers to define a contract once and generate native code for each target language. For same-language workloads, it provides native serialization modes: a high-performance Java replacement for JDK serialization, Hessian, Kryo, and FST; and a Python mode faster and more compact than pickle and cloudpickle. It also offers a row format for zero-copy field access without rebuilding complete objects, and Fory JSON for maximum-throughput Java JSON serialization.

Fory suits teams building polyglot systems that need reliable cross-language data exchange with minimal overhead, or Java and Python projects seeking faster native serialization than standard libraries. The framework is particularly valuable when object identity and circular references matter, or when payload size and throughput are critical. The README emphasizes performance benchmarks showing substantially higher throughput than common alternatives in Java workloads.

The project maintains active development across multiple language implementations with consistent feature parity. Work spans the full stack from core serialization logic through language-specific code generation and runtime optimizations. The codebase includes specialized formats and performance-focused variants like the row format and JSON framework, indicating sustained investment in covering diverse use cases. Testing and benchmarking infrastructure receives ongoing attention to validate performance claims across languages and workloads.