Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Running on CI

When running on CI, consider the following specifics of how figx operates:

Progress bar is disabled

CI environments typically do not support animated progress bars in stdout/stderr. figx will automatically disable it. To monitor the import process, use the -v flag to enable basic logging showing which resources are being processed.

Example:

figx -v import //...

Limit concurrency

CI runners often have a large number of logical cores. By default, figx uses a thread pool equal to the number of logical CPUs. On machines with 64+ threads, this may result in a flood of 429 and 500 errors from Figma REST API. It is strongly recommended to limit concurrency using the -j flag.

Example:

figx -j8 import //... # only 8 threads will be spawned

(Experimental) Metrics reporting

During execution, figx collects metrics on the number of resources scheduled, downloaded, and served from cache.

For now, metrics are available for fetch and import commands only.

Output is saved to .figx-out/caches/metrics.prom.

Caching Between Runs

To improve performance and minimize network usage, configure caching for the .figx-out/caches directory in your CI environment. This directory stores indexed Figma files and downloaded resources. On subsequent runs, figx can re-download only the resources that have changed in the Figma file, rather than fetching everything from scratch. This can drastically reduce execution time for repeated CI runs.