Giter VIP home page Giter VIP logo

qjake / hadotnet.commandcenter Goto Github PK

View Code? Open in Web Editor NEW
159.0 9.0 11.0 1.01 MB

πŸ“± A web-based, wall-mountable command center for Home Assistant.

Home Page: https://hacc.dev

License: Apache License 2.0

C# 28.77% HTML 35.44% CSS 1.64% TypeScript 16.46% Dockerfile 1.68% PowerShell 0.75% JavaScript 13.17% Less 2.10%
home-assistant tablet-ui home-assistant-custom home-assistant-frontend hacc hassio

hadotnet.commandcenter's Introduction

Home Assistant Command Center (HACC)

release ci-badge maintain lic

issues prs

docker-pulls docker-stars

Buy me a coffee

A web-based, wall-mountable command center for Home Assistant.

dashboard

View more screenshots below.

Features

  • Point-and-click admin interface for configuring tiles, layout, themes, and more
  • Drag and drop layout editor
  • Dashboard updates via JavaScript (no page reloading)

Tile Types

Home Assistant

State

Display the state of any entity.

Switch and Light

Display a switch, group, or light with an icon. Tap to toggle it on/off.

Person

Display a user's current location (zone name) and profile picture, if set.

Camera

Display a camera feed from a connected compatible camera. Customize the way the feed is displayed on the dashboard.

Weather

Display current weather information (temperature, high/low, conditions, rain, and wind. (For best results, enable the Dark Sky component for use with this tile.)

Scene

Start a scene in Home Assistant with a custom icon and label.

Calendar

Pull Google Calendar information and display the next n events on your dashboard.

Coming Soon

  • Support for multiple pages and navigation
  • Support for additional HA entity types
  • Additional weather attributes (humidity, forecast, etc)
  • Theme browser

Installing

HACC is an ASP.NET Core 3.1 LTS project. Therefore, it should be able to run on any environment that supports the ASP.NET 3.1 Runtime (Windows, Linux, macOS, ARM64, anything really).

Via Docker

Note: At this time, only Docker in Linux mode is supported. Docker in Windows mode is coming soon.

A public Docker image is published for this project: qjake/hacc

docker pull qjake/hacc
docker run -p 8095:8095 qjake/hacc

Your HACC instance will be available at: http://localhost:8095/

Manually

Download, build, and publish the project. Then deploy it to a server or into IIS.

Screenshots

Editing Themes

dashboard

Editing Tile Layout

dashboard

Browsing Tiles

dashboard

New Tile Selection

dashboard

Credits

Proudly made with the following software:

hadotnet.commandcenter's People

Contributors

qjake avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

hadotnet.commandcenter's Issues

Add screensaver

HACC should support a screensaver to prevent screen burn-in on always on tablets.

Screensaver should be something like Android screensaver - black screen with time and date appearing at random screen locations every few minutes.
Screensaver should appear after configurable amount of time with some default (5-10 minutes?).
Screensaver should instantly disappear once a screen touch is detected.

Input boolean

Describe the new functionality

Input boolean works the same as a switch, but slightly different function

What will it look like in the Admin area?

Same as switch

What will it look like on the dashboard?

Like a switch that can be turned on and off

How will it work for standalone users vs. Hass.io Addon users?

?

option to not show some weather sensors

Describe the new functionality

I would like to be able to hide individual sensors

What will it look like in the Admin area?

a tick box next to each sensor to disable it from that weather tile

What will it look like on the dashboard?

Nothing, that sensor just wont appear on the tile

How will it work for standalone users vs. Hass.io Addon users?

Set default layout and tile size

By default these are all set at zero. I wondered for some time why I wasn't seeing a page, or anything in the layout preview. Perhaps set to sensible defaults- say 640x480 with 120 sized tiles.

Switches not refresh

Description

When I turn on or turn off a switch outside of dashboard, the switch of dashboard not refresh to the current state.

Environment

HACC version 0.5.1
Hass.io on a NUC Inter iCore i5 with docker
Homeassistant version 0.98.5
I use Safari on iPhone XS with iOS 12.4 and on iPad with iOS 12.4.1 (also I've tried Chrome)

Steps to Reproduce

  1. Open dashboard on iPad or iPhone
  2. I turn on or turn off some switch
  3. Wait to refresh the dasboard
  4. The dashboard not refresh

Screenshots

Grouped Light Bulbs not working via Switch Tile

Description

I created a group of lights in my configuration then created a switch tile to control the multiple lights and when you click the tile it throws an API error and does nothing.

Environment

<What version of HACC are you running?>
0.6.0

<What environment is it? Hass.io on a Raspberry Pi 3B+? AMD64 Docker on Alpine 3.10?>
Docker via Supervisor on Ubuntu 18.04

Steps to Reproduce

  1. Create Group of Lights
  2. Create Switch tile in HACC
  3. Click tile

Screenshots

System.Exception: Unexpected response code 400 from Home Assistant API endpoint /api/services/switch/turn_on.
   at HADotNet.Core.BaseClient.Post[T](String path, Object body, Boolean isRawBody)
   at HADotNet.Core.Clients.ServiceClient.CallService(String domain, String service, Object fields)
   at HADotNet.CommandCenter.Models.Config.Tiles.SwitchTile.OnClick(ServiceClient serviceClient) in /src/HADotNet.CommandCenter/Models/Config/Tiles/SwitchTile.cs:line 57
   at HADotNet.CommandCenter.Hubs.TileHub.OnTileClicked(String tileName) in /src/HADotNet.CommandCenter/Hubs/TileHub.cs:line 91
   at Microsoft.AspNetCore.SignalR.Internal.DefaultHubDispatcher`1.ExecuteHubMethod(ObjectMethodExecutor methodExecutor, THub hub, Object[] arguments)
   at Microsoft.AspNetCore.SignalR.Internal.DefaultHubDispatcher`1.<>c__DisplayClass13_0.<<Invoke>g__ExecuteInvocation|0>d.MoveNext()

Impossible to save Theme settings

Hello,
i can't save theme setting. There is no error message. I can edit colors, types etc... I can save my modifications, but when i'm back to this menu, nothing has been saved.
Version 0.4.1
Regards

Add Hass.io Addon Support

Add support for this addon to be installed via the Hass.io Addon Interface.

Things to consider:

  1. Hass.io runs on different architecture - ARMv8 and AMD64 - how is this handled by the Dockerfile that's built or the image(s) that are pulled?
  2. For those running Hass.io on an RPi (ARMv8), this runs on Alpine Linux, for which a base Docker image is not available at this time. A Docker image for Alpine ARMv8 will be released with .NET Core 3.0 in September 2019, so until that point, a Hass.io addon for RPi images is not possible.

Tile icon not refreshing

I have a light tile. The light is an entity of sonoff with ESPHome connected to HA.
Touching tile working fine - icon changing from on to off etc. and light turns On/Off.
But - when I switch the light witch a button on sonoff - icon on HACC tile not changing from On to Off.

support for input_select

Describe the new functionality

The addition of a tile type to support input_select

What will it look like in the Admin area?

min: The name of the entity
extra: the opportunitiy to select and icon for each of the various possible states

What will it look like on the dashboard?

text of current state, drop down selection on click, or cycle through options

How will it work for standalone users vs. Hass.io Addon users?

Add support for multiple dashboard pages

HACC should support multiple dashboard pages.

This will involve a fair amount of work:

  • The single tile list will need to be replaced with a two-deep list (essentially, Root [ Pages [ Tiles ] ])
  • The layout editor will need to support being able to lay out each page separately, either via tabs or some context switcher that's easy to understand
  • Tiles will need to be added for navigation (go to page) and refresh
  • Need to be able to deep link to a page, probably with a querystring parameter or maybe a virtual path, though this may interfere if, for example, you have a page called "admin" and there's already a path for /admin...

No persistant storage in Docker setup?

Is there a persistant folder to map to the host? Every time the docker updates I loose everything and get the welcome screen again. Have to make a new token ect.

Feature request: Allow groups for Person Tiles

Currently the Person Tile allows individual trackers, or Persons - The Person component is unreliable for me so I use a Group of device trackers to establish presence. Would be nice to be able to select the group to display presence on one of these tiles.

Thanks.

Add floor plan support

Add support for floor plans and entities inside.

Or, figure out a way to easily embed Lovelace into an iframe in a tile which may achieve the same thing.

arm32v7 docker image

Thanks for all your efforts in creating this project.

Is there a plan for an official (armhf/arm32/arm32v7) docker image that would run the trusted Raspberry Pis with 32 bits OS? I note the current images are all 64 bits releases.

In the meantime I have successfully built a 32bits Raspberry PI image from your original Dockerfile with the following two amendments:

FROM mcr.microsoft.com/dotnet/core/aspnet:2.2.6-bionic-arm32v7 as base
FROM mcr.microsoft.com/dotnet/core/sdk:2.2.401-bionic-arm32v7 as build

Thanks again.

Add support for Maps

Original request: #2

Add support for embedding maps and displaying locations of device_tracker and person locations on the map, similar to Lovelace.

Would need to research which maps are suitable for this and if it could be configurable or not. Choices would include:

  • OpenStreetMap
  • Google Maps
  • Azure Maps
  • or others...?

Covers/curtains

Describe the new functionality

Add the cover buttons, three buttons in 1 card: Up, stop and down

What will it look like in the Admin area?

As an extra tile, but specially for covers (since these feature three buttons)

What will it look like on the dashboard?

Something like this perhaps?
https://community-home-assistant-assets.s3.dualstack.us-west-2.amazonaws.com/original/3X/8/0/804e56422f6250e0bb47b3688870125dafc6ce98.png

But maybe a better implementation can be used

How will it work for standalone users vs. Hass.io Addon users?

?

Person component enhancement

Although you can use the state tile it would probably make sense to allow the person tile to use the person entity from Home Assistant instead of only device_tracker.

Export config error

Description

Export config error

I have a problem with Exporting my config where I get an error which reads:

hacc-export-20190912-071505.config.jsonFailed - Network error

Environment

<What version of HACC are you running?>

0.5.1.0, built on 09/08/2019 15:30:28

<What environment is it? Hass.io on a Raspberry Pi 3B+? AMD64 Docker on Alpine 3.10?>

Installed on QNAP using ContainerStation (Docker)

Steps to Reproduce

  1. HA Command Center – Admin Area
  2. Click Export
  3. error appears (see lower left screenshot below....download error)

Screenshots

HACC ErrorCrop

Timezone not including GMT-1200

I get every number from -1100 to +1200, but not -1200. Running 0.4.1.

Also shouldn't the timezones really be proper text like Pacific/Auckland, rather than just numbers?

Import Themes

Is the Import function something that is planned for the future and just a placeholder? When I click on it, nothing happens.

Lost configuration after upgrading to latest image

Hi Jake,

Thanks a lot for an amazing project; Finally a well designed easy to use dashboard for HA.

I just have an issue; I have HACC, HA and pretty much everything running in docker containers, and I have "watchtower" automatically upgrading them, so unless my containers are bound to volumes they will lose the configuration when updated.

Can HACC save its configuration to a volume ?

Thanks

Add support for iframe page

I'd really like to have a possibility to add iframe page to the HACC to be able to display Grocy.

Right now I'm using TileBoard and it's iframe tile to display Grocy on a separate page. I'm using it on my fridge to keep track of items and shopping lists.

Install Wiki needs update

Description

On wiki for this project, in the "Installing via Hass.io Addons" section, it states (in step 1) to navigate to the Hass.io tab. This language should be updated to state "Navigate to the Supervisor tab" since it was recently renamed.

I do not see a way to edit or make a PR on the wiki itself, hence this issue report.

Environment

N/A

Steps to Reproduce

N/A

Screenshots

N/A

Dimmable light buttons

Describe the new functionality

Using a slider to also be able to dim lights. This can be done using the same style using the Lovelace Light button, or with a longpress opening a slider

What will it look like in the Admin area?

Automatically added if the light supports dimming?

What will it look like on the dashboard?

My suggestion would be to look like the lovelace light:
https://www.home-assistant.io/images/lovelace/lovelace_light_card.png

How will it work for standalone users vs. Hass.io Addon users?

?

Add support for Alarm Panels

Original request: #2

Add support for alarm panels.

@nickrout I don't know if this is possible via the API - I'm looking at the REST API documentation and I don't see a way to interact with alarm panel-type devices - can you walk me through how an alarm panel is built and what entity types it uses and what it's supposed to do?

401 error when restarting HACC

Installed the new 0.5.0 version of HACC and added a device tracker as a test. This was working as expected. I stopped and restarted HACC and now I get the following error in the logs and the Web UI opens but does not fully populate the device tracker that I added

info: HADotNet.CommandCenter.Middleware.HAClientInitialization[0]
Auto-initializing HACC via Hass.io addon.
fail: Microsoft.AspNetCore.SignalR.Internal.DefaultHubDispatcher[8]
Failed to invoke hub method 'RequestTileState'.
System.Exception: Unexpected response code 401 from Home Assistant API endpoint /api/states/device_tracker.neil.
at HADotNet.Core.BaseClient.Get[T](String path)
at HADotNet.Core.Clients.StatesClient.GetState(String entityId)
at HADotNet.CommandCenter.Hubs.TileHub.RequestTileState(String tileName) in W:\GitHub\HADotNet.CommandCenter\HADotNet.CommandCenter\Hubs\TileHub.cs:line 50
at Microsoft.AspNetCore.SignalR.Internal.DefaultHubDispatcher1.ExecuteHubMethod(ObjectMethodExecutor methodExecutor, THub hub, Object[] arguments) at Microsoft.AspNetCore.SignalR.Internal.DefaultHubDispatcher1.<>c__DisplayClass13_0.<g__ExecuteInvocation|0>d.MoveNext()

Add custom state name

Description

I have a state tile for inform me than it's day to do something. It's now presenting 'On/Off' state on the dashboard. Is it possible to add custom names in ptile properties?
Another big feature would be possibility to set a color for state. For example red for On ane black for Off.

Environment

0.5.1
RPi 3.

Steps to Reproduce

  1. List out the
  2. Steps to take to
  3. Reproduce the issue

Screenshots

Support HassIO Ingress

Describe the new functionality

Hass.io add-ons can make use of ingress to enable seemly integration w/ the UI

What will it look like in the Admin area?

What will it look like on the dashboard?

It would show up on Hass not HACC

How will it work for standalone users vs. Hass.io Addon users?

I would think it would be only available for Hass.io user, so standalone users would presumably not be impacted

Update HACC to ASP.NET Core 3.1 (LTS)

Upgrade Docker images and project code to ASP.NET Core 3.1 (LTS)

Docker base images will need to be updated and moved off preview/RC tags.

Code will need to be updated (especially startup code) to 3.x style.

Override Label for Light Tile

Describe the new functionality

Add an Override Label for Light Tile Entity

What will it look like in the Admin area?

It would be the same as the existing functionality in the Switch Tile Admin Area

What will it look like on the dashboard?

The dashboard will then have the override lable text displayed.

How will it work for standalone users vs. Hass.io Addon users?

Same for all users.

Add support for Google Calendar

I think a fair number of users would like to see our upcoming schedule on the dashboard (something like atomic calendar)
could this be considered for future release?

time/date in UTC.

The time/date tile seems to show the wrong time, for me (UTC -1200 - Pacific/Auckland) it is showing 3.47 am not 3:47 pm.

Endless background task

Description

Every few days the "Community" page cannot finish the background task (the orange line is moving over and over). After restarting HA problem is solved for a few days.
The JS concole does not show anything suspect.

Environment

Integration version: | 0.20.8
Frontend version: | 20200104192235

Hass.io on a Raspberry Pi 3B+

Steps to Reproduce

  1. Open the Community page.
  2. Observe the orange strip moving over and over and the alert message, as in the attached screnshot. Only the HA restart helps. However, after few days problem will appear again.

Screenshots

obraz

Cant uninstall HACC

Description

It isnt possible to uninstall HACC

Environment

<What version of HACC are you running?>

<What environment is it? Hass.io on a Raspberry Pi 3B+? AMD64 Docker on Alpine 3.10?>
Hassio on RPI4

Steps to Reproduce

  1. List out the
  2. Steps to take to
  3. Reproduce the issue

please see
https://community.home-assistant.io/t/hacc-home-assistant-command-center/134843/184?u=mariusthvdb

19-09-18 08:00:09 INFO (SyncWorker_2) [hassio.docker.interface] Remove image qjake/hacc-hassio-armv7 with latest and 
19-09-18 08:00:09 WARNING (SyncWorker_2) [hassio.docker.interface] Can't remove image qjake/hacc-hassio-armv7: 400 Client Error: Bad Request ("invalid reference format")

```## Screenshots

<Paste or upload screenshots here.>

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.