# hacs/integration

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/hacs-integration).**

7,121 stars · 1,516 forks · Python · mit

## Links

- GitHub: https://github.com/hacs/integration
- Homepage: https://hacs.xyz
- awesome-repositories: https://awesome-repositories.com/repository/hacs-integration.md

## Topics

`community` `hacs` `home-assistant` `integration` `package-manager`

## Description

This project is a package manager for Home Assistant that enables the discovery and installation of community-made scripts, integrations, and frontend assets. It functions as a custom component manager and a GitHub-based package manager, providing a centralized community store to extend smart home functionality via remote repositories.

The system distinguishes itself through a specialized catalog and indexing service that organizes third-party extensions by category and country. It includes a version-tracking update engine that monitors commit hashes, tags, and branches to manage stable and pre-release software updates.

The software covers a broad range of repository management capabilities, including the installation and removal of custom themes, dashboard elements, Python scripts, and shared templates. It also handles administrative tasks such as geographic repository filtering, custom repository registration, and OAuth-based access management for connected accounts.

Diagnostic tools are provided for system troubleshooting, including the export of system state metadata and detailed execution logging.

## Tags

### Hardware & IoT

- [Community Plugin Management](https://awesome-repositories.com/f/hardware-iot/community-plugin-management.md) — Provides a centralized community catalog for finding and installing third-party extensions and custom components.
- [Community Element Installations](https://awesome-repositories.com/f/hardware-iot/community-element-installations.md) — Home Assistant downloads a specific or versioned copy of a community element into the local configuration directory. ([source](https://hacs.xyz/docs/use/repositories/dashboard/))
- [Home Automation](https://awesome-repositories.com/f/hardware-iot/connectivity-iot/home-automation.md) — Extends smart home functionality by installing and updating community-made Python scripts and AppDaemon applications.
- [Custom Component Management](https://awesome-repositories.com/f/hardware-iot/custom-component-management.md) — Manages community-made Python scripts, AppDaemon apps, and frontend assets to extend smart home functionality.
- [Home Automation Extension Catalogs](https://awesome-repositories.com/f/hardware-iot/home-automation-extension-catalogs.md) — Operates a catalog and indexing service that organizes third-party home automation extensions by category and country.

### Part of an Awesome List

- [Smart Home and IoT](https://awesome-repositories.com/f/awesome-lists/productivity/smart-home-and-iot.md) — Acts as a community store for installing and updating third-party integrations, themes, and dashboard elements from GitHub.

### Content Management & Publishing

- [Extension Category Organization](https://awesome-repositories.com/f/content-management-publishing/category-organizations/extension-category-organization.md) — Indexes and organizes community extensions by category to facilitate easy discovery and installation. ([source](https://hacs.xyz/docs/use/repositories/type/))
- [Community Extension Removal](https://awesome-repositories.com/f/content-management-publishing/page-sequence-managers/community-extension-removal.md) — Allows users to uninstall and remove community-made components from the local configuration directory. ([source](https://hacs.xyz/docs/use/repositories/dashboard/))

### Development Tools & Productivity

- [Local Configuration Installations](https://awesome-repositories.com/f/development-tools-productivity/dependency-managers/installation-resolution-utilities/dependency-installers/flat-directory-installations/local-configuration-installations.md) — Downloads third-party scripts and assets directly into the system configuration folder to extend native functionality.
- [External Repository Administration](https://awesome-repositories.com/f/development-tools-productivity/external-repository-administration.md) — Allows adding and managing external software sources to keep custom scripts and tools up to date.
- [GitHub-Based Package Management](https://awesome-repositories.com/f/development-tools-productivity/github-based-package-management.md) — Functions as a package manager that discovers and downloads versions, tags, and branches directly from GitHub.
- [Community Extension Integrators](https://awesome-repositories.com/f/development-tools-productivity/platforms-runtimes-language-services/developer-ecosystems/community-extension-integrators.md) — Provides a framework for incorporating third-party community plugins and integrations into the smart home environment. ([source](https://hacs.xyz/docs/use/repositories/type/integration/))
- [Community Extension Discovery](https://awesome-repositories.com/f/development-tools-productivity/platforms-runtimes-language-services/developer-ecosystems/community-extension-integrators/community-dependency-repositories/community-extension-discovery.md) — Offers a searchable and filterable catalog to discover third-party community integrations and scripts. ([source](https://cdn.jsdelivr.net/gh/hacs/integration@main/README.md))
- [Update Managers](https://awesome-repositories.com/f/development-tools-productivity/update-managers.md) — Facilitates the downloading and installation of new versions for community-contributed components. ([source](https://hacs.xyz/docs/use/update/))
- [Versioned Component Installations](https://awesome-repositories.com/f/development-tools-productivity/versioned-component-installations.md) — Provides the ability to install specific versions of community components using GitHub tags, branches, or commit SHAs. ([source](https://hacs.xyz/docs/use/entities/update/))
- [Community Python Script Installation](https://awesome-repositories.com/f/development-tools-productivity/python-development-tools/script-execution-engines/python-scripting-environments/community-python-script-installation.md) — Downloads community-made Python scripts into the local configuration for use in automation. ([source](https://hacs.xyz/docs/use/repositories/type/python_script/))
- [Pre-release Version Selectors](https://awesome-repositories.com/f/development-tools-productivity/release-management/pre-release-build-channels/pre-release-version-selectors.md) — Allows users to opt into beta versions or restrict updates to only stable releases for tracked repositories. ([source](https://hacs.xyz/docs/use/entities/switch/))
- [Repository Metadata Filtering](https://awesome-repositories.com/f/development-tools-productivity/version-control-repository-tools/repository-metadata-filtering.md) — Filters the community catalog using country codes and category flags defined in the repository source.

### DevOps & Infrastructure

- [Package Manifests](https://awesome-repositories.com/f/devops-infrastructure/asset-metadata-management/asset-metadata-indexers/package-manifests.md) — Uses structured manifest files to index, categorize, and filter community extensions from external repositories.
- [Community Template Installation](https://awesome-repositories.com/f/devops-infrastructure/cloud-deployment-templates/community-template-imports/community-template-installation.md) — Downloads custom shared templates and triggers a system reload to apply changes immediately. ([source](https://hacs.xyz/docs/use/repositories/type/template/))
- [Custom Repository Registration](https://awesome-repositories.com/f/devops-infrastructure/repository-management/repository-metadata-management/custom-repository-registration.md) — Allows the registration of external software sources to expand the available community element catalog. ([source](https://hacs.xyz/docs/use/repositories/dashboard/))

### System Administration & Monitoring

- [Repository Update Tracking](https://awesome-repositories.com/f/system-administration-monitoring/repository-update-tracking.md) — Monitors commit hashes and tags of tracked repositories to signal the availability of new software versions.
- [Update Monitors](https://awesome-repositories.com/f/system-administration-monitoring/software-update-managers/update-monitors.md) — Monitors remote repositories for new versions and notifies the user when updates are available. ([source](https://hacs.xyz/docs/use/entities/update/))
- [Software Version Managers](https://awesome-repositories.com/f/system-administration-monitoring/software-version-managers.md) — Monitors third-party repositories for new releases and manages the installation of stable or pre-release software updates.
- [Diagnostic Data Exports](https://awesome-repositories.com/f/system-administration-monitoring/diagnostic-data-exports.md) — Serializes system state and configuration into JSON files to facilitate technical troubleshooting and debugging.
- [Debug Logging Management](https://awesome-repositories.com/f/system-administration-monitoring/monitoring-and-observability/observability-platforms/log-management-systems/debug-logging-management.md) — Writes detailed execution traces and API interactions to system logs to resolve errors through targeted debug logging. ([source](https://hacs.xyz/docs/use/troubleshooting/logs/))

### Data & Databases

- [Cache Bypass Mechanisms](https://awesome-repositories.com/f/data-databases/distributed-state-synchronizers/cache-bypass-mechanisms.md) — Implements a dedicated endpoint that explicitly disables caching for dashboard resources to ensure immediate updates.

### Security & Cryptography

- [OAuth Integration Managers](https://awesome-repositories.com/f/security-cryptography/oauth-integration-managers.md) — Manages third-party OAuth authorization tokens to control and revoke permissions for connected external accounts.

### User Interface & Experience

- [Community Dashboard Installation](https://awesome-repositories.com/f/user-interface-experience/dashboards-and-homepages/community-dashboard-installation.md) — Integrates community-contributed dashboard cards and views into the system resources. ([source](https://hacs.xyz/docs/use/repositories/type/dashboard/))
- [Theme Customization](https://awesome-repositories.com/f/user-interface-experience/theme-customization.md) — Downloads and applies shared styling configurations to modify the visual appearance of the user interface. ([source](https://hacs.xyz/docs/use/repositories/type/theme/))
