FIDL (Fuchsia Interface Definition Language) is the IPC system for Fuchsia.
Start here
The language tutorials presents a simple "Hello, world" client and server, showing the FIDL language definitions and continuing with sections specific to each supported target language (e.g., C++, Dart).
Read the concepts doc to get a brief overview of what FIDL is, including some of its design goals, requirements, and workflow.
Developer Guides
- Running FIDL — quick CLI overview of the various programs in the FIDL toolchain
- Style Guide
- Designing APIs
- ABI and API compatibility guide — details the possible transitions for each FIDL type, taking into account ABI and API compatibility
- Maxing Out Pagination — help on determining how much data can fit into a single message
- C Family Binding Comparison — how to decide, which binding (new C++, HLCPP, or C) to use
References
The bindings reference includes references of generated code in each binding and the FIDL utility libraries available to each language.
The language reference is for everything else, like the wire format and RFCs.
Contributing
Please read the contributing doc for more information.