Getting Started
This guide covers installation and basic setup for cross-language serialization in all supported languages.
Installation
Java
Maven:
<dependency>
<groupId>org.apache.fory</groupId>
<artifactId>fory-core</artifactId>
<version>0.14.1</version>
</dependency>
Gradle:
implementation 'org.apache.fory:fory-core:0.14.1'
Python
pip install pyfory
Go
go get github.com/apache/fory/go/fory
Rust
[dependencies]
fory = "0.13"
JavaScript
npm install @apache-fory/fory
C++
Use Bazel or CMake to build from source. See C++ Guide for details.
Enable Cross-Language Mode
Each language requires enabling xlang mode to ensure binary compatibility across languages.
Java
import org.apache.fory.*;
import org.apache.fory.config.*;
Fory fory = Fory.builder()
.withLanguage(Language.XLANG) // Enable cross-language mode
.withRefTracking(true) // Optional: for circular references
.build();
Python
import pyfory
# xlang mode is enabled by default
fory = pyfory.Fory()
# Explicit configuration
fory = pyfory.Fory(ref_tracking=True)
Go
import forygo "github.com/apache/fory/go/fory"
fory := forygo.NewFory()
// Or with reference tracking
fory := forygo.NewFory(true)