Components are the basic unit of executable software on Fuchsia.

Note: This section contains documentation about components using the modern component framework (Components v2). The Fuchsia platform team is currently migrating legacy components to the modern component framework. For details on legacy components, see Legacy components.

Architectural concepts

  • Introduction: Understanding components and the component framework.
  • Component manager: The runtime.
  • Lifecycle: Component instance progression from creation to destruction.
  • Topology: The relationships among component instances.
  • Realms: Sub-trees of the component instance topology.
  • Identifiers: Identifiers for components and component instances.

Developing components

  • Capabilities: Different types of capabilities and how to route them between components.
  • Component manifests: How to define a component for the framework.
  • ELF runner: How to launch a component from an ELF file. Typically useful for developing system components in C++, Rust, or Go.

Extending the component framework

  • Runners: Instantiate components; add support for more runtimes.
  • Resolvers: Find components from URLs; add support for methods of software packaging and distribution.


  • Hub: A live view of the component topology at runtime.