blob: e24fc685b3a4e642234b5efc73ffbcc0de2d282c [file] [log] [blame] [view]
# FIDL
FIDL (**F**uchsia **I**nterface **D**efinition **L**anguage) is the IPC system for Fuchsia.
## Start here
The [language tutorials][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][concepts] to get a brief overview of what FIDL is,
including some of its design goals, requirements, and workflow.
## Developer Guides
* [Running FIDL][cli] — quick CLI overview of the various programs in the FIDL toolchain
* [Style Guide][style]
* [Designing APIs][designing-apis]
* [Evolving APIs][evolving-apis] — details the possible transitions for each FIDL type,
taking into account API and ABI compatibility
* [Maxing Out Pagination][pagination] — help on determining how much data can fit into a single
message
* [C Family Binding Comparison][c-family] — how to decide which binding (HLCPP, LLCPP, or C) to use
## References
The [bindings reference][bindings-ref] includes references of generated code in each binding and the FIDL
utility libraries available to each language.
The [language reference][language-ref] is for everything else, like the
[wire format][wire-format] and [FTPs][ftps].
## Contributing
Please read the [contributing doc][contributing] for more information.
<!-- xrefs -->
[cli]: /docs/development/languages/fidl/guides/cli.md
[style]: /docs/development/languages/fidl/guides/style.md
[designing-apis]: /docs/development/languages/fidl/guides/api-design.md
[evolving-apis]: /docs/development/languages/fidl/guides/abi-compat.md
[pagination]: /docs/development/languages/fidl/guides/max-out-pagination.md
[c-family]: /docs/development/languages/fidl/guides/c-family-comparison.md
[tutorials]: /docs/development/languages/fidl/tutorials/overview.md
[concepts]: /docs/concepts/fidl/overview.md
[contributing]: /docs/contribute/contributing-to-fidl
[bindings-ref]: /docs/reference/fidl/bindings/overview.md
[language-ref]: /docs/reference/fidl/language/language.md
[wire-format]: /docs/reference/fidl/language/wire-format
[ftps]: /docs/contribute/governance/fidl/README.md