Madelena / hass-config-public

My Dashboards for Home Assistant - Advanced data visualizations, responsive design, a neat maximalist Metro Live Tile layout, and an ultraminimal tablet layout!
700 stars 55 forks source link
home-assistant home-assistant-config home-assistant-configuration home-automation lovelace-ui

Madelena's Home Assistant Configs

The Maximalist Dashboard + The Ambient Smart Display

This is a redacted version of my personal dashboard configuration for Home Assistant, an open source home automation server that integrates nearly 2000 existing IoT services into one powerful, private, and unified user interface.

ko-fi

My design is based on these principles:

There are mainly two types of dashboards in this configuration:

It uses my own Metrology theme, based on Metro design system, to reduce visual clutter, create a sense of visual hierarchy, and focus on the data.

Table of Contents

The Maximalist Dashboard

Contrary to conventional UX design, the dashboard is intentionally dense with information and not minimalist, because it is designed for only one power user: me.

My goal is to create a sense of awareness of my surroundings and my resources through information, while my second priority is to be able to control and fine-tune all aspects of my living space. This is not designed for convenience since I already have physical buttons and switches for such purpose.

HA Config - Summary

The dashboard is designed to maximize the amount of information displayed without additional user interactions, acting as an ambient display in the background. Information is not hidden or tucked away from view but is instead shown in its full glory for those who love to look at real-time data visualizations.

Animation is toned down so that it still feels responsive but not distracting. Colors are used to draw attention to things that I need to attend to, and the monochromatic color scheme keeps the visual priority clear. The wireframe aesthetic for illustrations and flat icons keeps visual noise to the minimum.

The Ambient Dashboard

It started as a thought experiment: How little information can I show on a screen and the design will still be useful? The other extreme of maximalism bequeaths an ultraminimalist layout that only shows just one sensor at a time.

This layout is perfect as a replacement for the ad-filled slideshows of smart home displays such as Amazon Echo Show devices and Google Home devices. With Home Assistant as its backbone, the main slideshow is infinitely customizable and the controls are tailored for my home, unlike their corporate counterparts.

Designed to achieve the “pre-attentiveness” of the human brain, ambient displays make it possible for the user to process information without diverting the attention toward background tasks.

There are two main components to the dashboard: the "Slides" and the "Apps". The Slides acts as the home screen that constantly and leisurely rotates each sensor information on a relaxing video backdrop. The Apps each act as a hub for controlling or monitoring a particular aspect of my home with touch-friendly and clean UI elements.

Features

Data Visualizations - Make it Expressive

Data is beautiful! Data in HA is used to render some unique, eye-catching, and informative graphs as the visual focus of each page.

HA Dataviz - Axonometric Floor Plan
Axonometric Floor Plan
HA Dataviz - Network Map
Network Rail Map
HA Dataviz - Energy Sankey
Energy Use Sankey Diagram
HA Dataviz - Psychrometry Chart
Psychrometry Chart
HA Dataviz - Weather History
Weather History + Forecast Chart
Music Chart
Last.fm Music Charts

All visualizations adhere to theme colors and light/dark modes.

Additional visualizations are embedded from third-party sources.


The Weekendest Subway Map

Bing Traffic Static Map

Weather Underground Radar Map

jsOrrery Solar System Map

Astropheric Weather Chart

Responsive Design - Make it Versatile

Grid columns reflow depending on screen width and device type. Since I use the dashboard in multiple form factors, the design needs to fit everything.

The dashboard in many different sizes on many different screens.

Live Tiles - Make it Tidy

Perfect square grid with tiles in all sizes Rotating cube animation to subtly catch the right amount of attention
Variations based on states Layouts for cameras, pictures, media players, etc.

Contextual Showxatings - Make it Handy

Show the right amount of information in the right context.

An e-Paper display using ESPHome shows just what is needed before heading outside. A stretched bar LCD display running a custom server works as an ambient clock.
An always-on display with the Maximalist Dashboard works as a command center of the home. An Amazon Echo Show showing a simplified dashboard makes it easy to mark chores as done.

Screenshots

View all the dashboards in detail here.

Summary view
Network view
Energy view
Light view
Maintenance view
Environment view
Neighborhood view
Me view
Astrometrics view (TBD)

How to install

The code is not meant to be installed as sensitive information had been redacted from the configuration. It is meant to be used as a reference to do some pretty wonderful things using lots of clever or ugly codes, tips, tricks, and hacks. Copy and paste stuff to your own dashboard config as you see fit.

A few requisities will help you use these codes:

Major HACS frontend mods

Template libraries

Include these lines in your dashboard YAML to use most of the templates defined in the config:

decluttering_templates: !include cards/decluttering_templates.yaml
button_card_templates: !include cards/button_card_templates.yaml
apexcharts_card_templates: !include cards/apexcharts_card_templates.yaml

Tools Used

Credits

Creative Commons License

This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

Additionally, I would appreciate proper credits back to me if redistributed or modified. That would help my livelihood since design is my career.