--- id: idf-component-manager version: "3.1.0" license: Apache-2.0 license_treatment: permissive maintenance: active --- # idf-component-manager — Espressif IDF Component Manager License: permissive · Maintenance: active · Downloads: 1.5M/mo ## What it is and what it does IDF Component Manager is a dependency resolver and downloader for ESP-IDF embedded projects. It reads `idf_component.yml` manifest files to identify component dependencies, resolves version constraints, and automatically downloads components from the ESP Component Registry or Git repositories into a `managed_components` directory during CMake configuration. The tool caches a `dependencies.lock` file to avoid re-downloading unchanged components on subsequent builds. The package integrates directly into the ESP-IDF build pipeline and supports version constraints, optional dependencies, conditional inclusion rules, pre-release versions, local paths, and custom registries. It is intended for developers building firmware for Espressif chips (ESP32, ESP32-C3, etc.) who want to reuse and share modular components without manually managing versions. Use it for: - Manage multiple ESP-IDF component dependencies in a single project manifest without manual version tracking. - Share reusable embedded components across projects via the ESP Component Registry or private Git repositories. - Automatically resolve and download transitive dependencies during the build process to ensure reproducible firmware builds. - Conditionally include components based on IDF version or target chip using manifest rules. - Cache component metadata to reduce registry requests when building frequently on the same machine. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Automatically downloads and manages ESP-IDF component dependencies for embedded projects, resolving versions from the ESP Component Registry or Git repositories during the CMake build process. Yes. This is the official Espressif dependency manager for ESP-IDF projects. It is actively maintained, has no known vulnerabilities, supports current Python versions, and is widely used (top 5000 PyPI packages). Install it if you are developing ESP-IDF firmware and want automated component dependency management; it is the standard tool for this workflow. ## Install pip install idf-component-manager uv add idf-component-manager poetry add idf-component-manager ## Installing idf-component-manager Before you install: Low install friction with a pure-Python wheel distribution. Actively maintained with a recent release (31 days ago) and current commits. Supports modern Python versions (3.10–3.14). License in practice: Licensed under Apache-2.0 (permissive), allowing use in commercial and proprietary projects with minimal restrictions. Quickstart: pip install idf-component-manager # In your ESP-IDF project, create idf_component.yml: # dependencies: # component: "~2.0.0" # username/component: ">=1.0.0" # Then run: idf.py reconfigure # Component Manager downloads dependencies to managed_components/ Requires ESP-IDF environment to be set up and active; CMake integration is automatic but only works within an ESP-IDF project structure. Verify before relying: - Whether the tool works offline or requires network access to the ESP Component Registry for typical workflows. - Performance characteristics when resolving large dependency graphs or working with many components. ## Package facts - License: Apache-2.0 (permissive) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 1.5M/month (top 5,000 on PyPI) - Known vulnerabilities: none known ## Tags esp-idf dependency manager, component version resolver, embedded project build tool, esp32 component registry, cmake dependency automation, esp-idf, embedded-systems, dependency-management [View on SkillFed](https://skillfed.io/packages/idf-component-manager) · [View on PyPI](https://pypi.org/project/idf-component-manager/)