The component graph provides a HTTP server written in python designed to be run on developer machines to view the complete component graph for their system state. This component graph is generated from data provided by the Fuchsia package manager system.
All packages provided by the Fuchsia Package manager are parsed and all available meta/ files are added as json objects to each package. By deep scanning every single package the tool is able to retrieve almost all component files that run on the system.
Currently parsing componentns from the ZBI is not supported. However this is planned future work.
The component graph is a tool that can be run from any fuchsia development machine. It is accessed from the webbrowser at localhost:8080
fx serve python3 -m server # For more information on configuring the server see. python3 -m server --help >>>>>>> [tools] - Component Graph.
The component graph search bar supports regex as well as a few useful search commands:
The uses command will give you a list of all components that use that particular service.
The offers command will give you the component that offers that particular service.
python3 -m unittest
The Far Reader will take as input a far package and output the decoded result as a json file.
python3 far_reader.py package.far