Skip to content
This repository was archived by the owner on May 23, 2026. It is now read-only.

About

A comprehensive camera card for Home Assistant

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

 
 

Latest commit

 

History

2,495 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GitHub Release Build Status License HACS

Camera Card HA

Camera Card HA

A comprehensive camera card for Home Assistant - Optimized for performance with lazy loading, native JavaScript helpers, and Home Assistant-specific optimizations.

Features

Core Features

  • Live viewing of multiple cameras with support for various live providers (HLS, WebRTC, JSMPEG, Image, go2rtc)
  • Timeline view for browsing events and recordings across multiple cameras with lazy loading optimization
  • Media gallery for clips and snapshot browsing with automatic updates
  • Media viewer with video scrubbing and seeking capabilities
  • Grid or carousel layout for multiple cameras with swipeable navigation
  • Fullscreen mode with optimized rendering
  • Direct media downloads from the card interface

Advanced Features

  • Picture Elements support - Full compatibility with Home Assistant Picture Elements
  • Automations - Trigger actions based on conditions (fullscreen, keyboard input, entity states, etc.)
  • Custom elements - Add custom HTML/CSS elements to the card
  • Menu system - Access arbitrary entities, cameras, and custom actions
  • Status bar - Display custom information and entity states
  • Folders - Organize cameras and media into folders
  • Overrides - Dynamic configuration changes based on conditions
  • Profiles - Pre-configured sets of defaults for easy setup
  • 2-way audio - Microphone support for cameras
  • Casting - Cast camera feeds to media players
  • PTZ controls - Pan, tilt, zoom controls for supported cameras
  • Keyboard shortcuts - Customizable keyboard navigation
  • Theme friendly - Adapts to Home Assistant themes
  • Lovelace visual editor - Edit configuration visually

Performance Optimizations

  • Lazy loading for timeline components (vis-timeline, vis-data) - reduces initial bundle size by ~759KB
  • Native JavaScript helpers - Replaced lodash functions to reduce bundle size
  • Optimized caching - Tuned cache sizes for better memory usage in HA context
  • State watching optimization - Deduplicated entity subscriptions
  • WebSocket request infrastructure - Prepared for request batching and caching
  • Smart card sizing - Improved getCardSize() estimation for better Lovelace layout

Installation

Via HACS (Recommended)

Option 1: Add Custom Repository

  1. Open HACS in Home Assistant
  2. Go to Frontend > Three dots menu (⋮) > Custom repositories
  3. Add repository with:
    • Repository: ngoviet/camera-card-ha
    • Category: Frontend (Lovelace)
  4. Click Add
  5. Go back to Frontend and search for Camera Card HA
  6. Click Download

Option 2: Use HACS Button

Troubleshooting: If you get "Repository not found" error:

⚠️ Important: HACS Indexing Time

HACS cần thời gian để index repository mới (6 giờ - 24 giờ). HACS cập nhật dữ liệu mỗi 6 giờ sau khi khởi động Home Assistant. Đây là nguyên nhân phổ biến nhất khi nút "OPEN HACS REPOSITORY" hoặc thêm repository thủ công vẫn báo "not found".

Common Solutions:

  1. Repository is Public ✅

  2. Wait for HACS indexing (6 hours - 24 hours):

    • HACS updates data every 6 hours after Home Assistant startup
    • Repository was created on 11/28/2025, HACS may need more time to index
    • Most common solution: Wait 6-24 hours and try again
    • If you just restarted Home Assistant, wait 6 hours for next HACS update cycle
  3. Clear HACS cache (Recommended):

    • In Home Assistant: HACS → Settings (⚙️ icon)
    • Click Clear HACS cache
    • Restart Home Assistant if needed
    • Try the button again after restart
  4. Manual repository add (Works immediately while waiting for indexing):

    • In HACS: Frontend → Three dots (⋮) → Custom repositories
    • Click + ADD
    • Repository: ngoviet/camera-card-ha (or full URL: https://github.com/ngoviet/camera-card-ha)
    • Category: Frontend (Lovelace)
    • Click Add
    • Wait a moment, then go to Frontend and search for Camera Card HA
  5. Verify HACS requirements (All met ✅):

    • ✅ Repository is public
    • ✅ Issues enabled
    • ✅ Topics added (hacs, home-assistant, lovelace, etc.)
    • ✅ Release v0.1.6 with assets (157 files)
    • ✅ Valid hacs.json file
    • ✅ Main file: camera-card-ha.js exists in release
  6. Submit to HACS Default Repositories (Optional but recommended):

    • If repository still not found after 24 hours, consider submitting to HACS default list
    • Visit: https://github.com/hacs/default
    • Follow the submission process to add repository to HACS default repositories
    • This will make repository available immediately without waiting for indexing
  7. Check HACS logs:

    • In Home Assistant: Developer Tools → Logs
    • Look for HACS-related errors
    • Common error: "Repository not found" usually means HACS hasn't indexed it yet

Important Notes:

  • Repository name must be exactly ngoviet/camera-card-ha
  • If the button doesn't work, use Option 1 (Manual repository add) - it's more reliable
  • New repositories typically take 10-30 minutes to appear in HACS
  • The repository is public and has all required files ✅

Manual Installation

See Advanced Installation for manual installation instructions.

Quick Start

Minimal Configuration

type: custom:camera-card-ha
cameras:
  - camera_entity: camera.office

Multi-Camera Grid

type: custom:camera-card-ha
cameras:
  - camera_entity: camera.office
  - camera_entity: camera.kitchen
live:
  display:
    mode: grid

Timeline with Scrubbing

type: custom:camera-card-ha
cameras:
  - camera_entity: camera.office
profiles:
  - scrubbing

Documentation

📖 Full Documentation - Complete configuration guide, examples, and usage instructions

Key Documentation Sections

Supported Camera Engines

  • Frigate - Full integration with Frigate NVR
  • Generic - Works with any Home Assistant camera entity
  • Reolink - Optimized for Reolink cameras
  • MotionEye - MotionEye integration

Live Providers

  • HLS - HTTP Live Streaming (default for most cameras)
  • WebRTC - Low-latency WebRTC streaming
  • JSMPEG - MJPEG streaming
  • Image - Static image updates
  • go2rtc - go2rtc integration

Support

If you find this project useful, please consider supporting development:

License

MIT License - See LICENSE file for details.

About

A comprehensive camera card for Home Assistant

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages