title: Overview sidebar_position: 0 id: index license: | Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the “License”); you may not use this file except in compliance with the License. You may obtain a copy of the License at

 http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an “AS IS” BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Start with a runtime page below. Each page includes a release-pinned installation, a runnable object-serialization round trip, the modes supported by that runtime, and a short path into every additional Fory capability available there.

Apache Fory™ releases are available as source artifacts and language-specific packages. For source downloads, see the Apache Fory™ download page.

First Five Minutes

  1. Choose the runtime used by your application.
  2. Install the package shown on that runtime page.
  3. Run its minimal serialize/deserialize example.
  4. Select xlang mode for cross-language data or native mode for same-runtime data when both are available.
  5. Continue to the capability guide for production configuration and advanced APIs.

Choose a Runtime

Each runtime page provides a release-pinned installation snippet, a minimal round trip for an application project, and the next capability-specific steps:

RuntimeSetup
JavaJava
PythonPython
C++C++
GoGo
RustRust
JavaScript/TypeScriptJavaScript/TypeScript
C#C#
SwiftSwift
DartDart
ScalaScala
KotlinKotlin

What You Can Build

CapabilityUse it forAvailable runtimesDetailed guide
Object SerializationReconstruct object graphs, including shared references and schema changesAll runtimesObject Serialization
Row FormatTrusted analytical data with zero-copy, random, or partial field accessJava, Python, C++, RustRow Format
Fory JSONHigh-performance standard JSON mappingJavaFory JSON
Fory IDLGenerate native models and serializers from Fory, protobuf, or FlatBuffers IDLAll runtimesFory IDL and Compiler
Fory gRPCUse generated models over normal gRPC transports with Fory-encoded messagesJava, Python, C++, Go, Rust, JavaScript, C#, Dart, Scala, KotlinFory gRPC

Object Serialization uses xlang mode for portable cross-language data. Java, Python, C++, Go, Rust, Scala, and Kotlin also offer native mode for same-runtime data. Use Choose a Format when you have not yet chosen a format.