
MMM-GDriveAmbient — Google Drive Photo Slideshow
Overview MMM-GDriveAmbient is a module for MagicMirror² that displays random photos from a Google Drive folder as an ambient slideshow. It authenticates via a Google Service Account, handles HEIC-to-JPEG conversion server-side, and extracts photo metadata for timeline integration. Key Features Google Drive integration — Fetches random images from a specified folder using a Service Account HEIC/HEIF support — Automatically converts iPhone photos to JPEG for browser compatibility Ambient color theming — Samples the dominant color from each photo and exposes it as a CSS variable (--ambient-color) Timeline sync — Sends date metadata to MMM-Timeline for live timeline highlighting Cached file listing — Reduces API calls with a 5-minute cache Architecture Layer Technology Role Frontend MagicMirror Module API Renders image, samples color, sends notifications Backend Node.js (NodeHelper) Google Drive auth, file download, HEIC conversion Integration Socket notifications Bi-directional frontend ↔ backend communication Technical Stack Runtime: Node.js APIs: Google Drive API v3 (Service Account auth) Libraries: googleapis, heic-convert Communication: MagicMirror socket notifications Source Code Full documentation, installation guide, and source code available on GitHub: github.com/CuzImHarry/MMM-GDriveAmbient