This repository contains the configuration files, custom components, and resources for a Home Assistant instance. It is designed to be modular, maintainable, and easy to extend for smart home automation and monitoring.
- Modular YAML configuration (split by domain)
- Custom components and integrations
- Device and area organization
- Automations, scripts, and scenes
- Backup and recovery files
- Community and custom Lovelace UI resources
- repo-docs/HA_DIAGNOSTICS.md — this repository’s troubleshooting notes (not official Home Assistant docs): log/MCP findings, integration health, in-repo fixes vs HA UI work. Update when you resolve issues. Cursor:
.cursor/rules/homeassistant-repo-docs.mdcasks the agent to read that file for HA-related tasks; you can also attach@repo-docs/HA_DIAGNOSTICS.md.
repo-docs/— Notes for this repo (e.g. diagnostics / troubleshooting), not core HA product documentation.cursor/rules/— Cursor rules (e.g. loadrepo-docs/HA_DIAGNOSTICS.mdfor HA troubleshooting; do not editcustom_components//www/community/without explicit confirmation)configuration.yaml— Main entry point for Home Assistantautomations.yaml— All automations (orautomation/folder if split)custom_components/— Custom integrationswww/— Lovelace UI resources (cards, icons, images)sensors/,switches.yaml,scenes.yaml, etc. — Domain-specific configssecrets.yaml— Sensitive credentials (not for public sharing)backups/— Backup files.storage/— Home Assistant internal storage (do not edit manually)
-
Clone this repository:
git clone https://github.com/maximunited/hass.git
-
(Optional, recommended on PEP 668 systems) Create a venv and install dev tools:
cd hass python3 -m venv .venv .venv/bin/pip install -r requirements-dev.txt .venv/bin/pre-commit install -
Copy the example secrets file and fill in your own values:
cp secrets.yaml.sample secrets.yaml # Then edit secrets.yaml and provide your real credentials and secrets -
Review and adjust
configuration.yamlfor your environment. -
Place custom resources in
custom_components/andwww/as needed. -
Start Home Assistant (Docker, venv, or supervised).
This repository includes pre-commit hooks to validate and format YAML files before commits.
-
Install pre-commit and dependencies:
pip install -r requirements-dev.txt # Or install individually: pip install pre-commit yamllint # Markdown: pre-commit installs markdownlint-cli (Node; v0.41.x supports Node 18+)
-
Install the git hooks:
pre-commit install
Pre-commit hooks will automatically run on git commit. They will:
- Check YAML syntax
- Lint YAML files for style issues (
yamllint) - Lint Markdown files (
markdownlintviamarkdownlint-cli) - Remove trailing whitespace
- Ensure files end with newlines
- Validate Home Assistant configuration (if
hasscommand is available) - Check for merge conflicts and private keys
To run hooks manually on all files:
pre-commit run --all-filesTo skip hooks for a specific commit:
git commit --no-verifyPull requests are welcome! Please:
- Follow the existing file structure and naming conventions
- Test your changes before submitting
- Do not include sensitive information
See LICENSE for details.
- Home Assistant
- Community custom components and card authors
For questions or suggestions, open an issue or contact the repository maintainer.