The past few months I have been working on creating a native app for Android. It is progressing very fast now and it is almost ready to get tested by actual users.
Why have I created this app?
The reason is simple, Home Assistant is a project that moves very fast and unfortunately often comes with changes that break a lot of custom cards (which would then either require the card devs to update them, or require me to fix it myself). So instead I thought it was easier to check for API/websocket changes instead (as that would be a lot faster to fix). Basically it is my first real Android app and it was meant to be a test, but it got a bit out of hand and I have a lot of fun building it. And since I was already building it, I thought maybe someone is interested in having this as well. If you think this project looks a lot like HKI Elements, then you are right, it is based of my other project HKI Elements.
First:
This app does NOT collect data. Only external data is to fetch openstreetmaps (which might be replaced with something better in the future). No other data will be collected and everything stays within your own Home Assistant environment.
Core Features:
A fully automatic UI, it can build the UI completely automatically by fetching devices you have setup inside areas as well as automatically fetching climate/sensors/security devices/camera’s/energy and batteries dashboard. If you have adaptive lighting installed it will even fetch that automatically.*
14 included languages!
A fully customizable UI, there are tons of options available to customize the dashboard if you want to re-arrange it, add widgets or remove stuff that was imported automatically (or you could completely start fresh). Almost every element is customizable in a simple way.
No YAML, no CSS, everything can be done via the UI, move things around. Predesigned buttons, widgets, sensors, graphs, popups and much more. No need for css to build a nice dashboard.
Over 25 widgets available at launch ranging from buttons, markdown cards, calendar, weather, energy, climate, vacuum, batteries, swipe stacks, parcel delivery, waste collection and many more.
Widgets can be placed freely on the home screen or room views, but if that isn’t sufficient then you can simply create new pages as much as you want. Some widgets are even animated.
Animated climate, security and energy views
A rich notification system with history, timestamps and ability to archive messages for later use which are also actionable
Light and dark modes and customizable theme colors
Fonts, text size, border radius styles are all configurable through the settings
Backup and restore dashboard UI as well as cloud saves, dashboards can be easily saved and restored this way. You can store them locally, Google Cloud or your local HA instance.
If you only use notifications, location and battery levels from your phone then you can fully replace the HA app with this one! More HA core features will be added in the future.
A nice onboarding process which allows you to either generate dashboard automatically, start empty, restore from backup or use the family shared dashboard.
Full entity/device search is available (and you can control any entity from the search panel as well)
Ability to connect to multiple Home Assistant instances
A fully featured flows/automation manager
Global search (search for any of your devices/entities)
Design your own popups
Family sharing, parental controls and much more, control what dashboards your family have access to and/or restrict them from using certain widgets or views entirely.
Features that will be added in the near future:
Car widget
Unifi widget
Unraid widget
Many more features
*NOTE: For rooms and energy to work automatically you will have to setup area’s and the energy dashboard first in HA. All other stuff like climate and security and batteries will be completely automatic without any user intervention. Also media players will be fetched automatically and can be controlled from the UI as well as Spotify playlist support.
Videos
For videos please join the discord channel below. There are many videos showcasing the UI on the channel.
Testing
I need people that are willing to test the app and provide feedback before this gets posted to the Google Playstore.
Currently there is a closed test going on and you can send me a DM with your google email account to get early access.
Disclaimer: This project is created with help from AI-assisted development tools. I know we live in a world where there is much AI-slop. But I actually want to show you that AI can also be used to create something good and not just stupid video’s, cheap apps or dumb images. If you disagree with this, then do not install this app.
A closed beta test on the Google Play store is now live!
Please send me a DM with your google email account and I will send an invite. This also means that the app no longer warns that the developer is unknown and is scanned for vulnerabilities.
I need 12 people to accept the invite and install the app (and leave it installed for 14 days). Unfortunately that is the requirement before I can push this to production.
So anyone that is willing to help me out with that, please send me your email address in a DM and I will send you the playstore link.
Thanks to everyone that will help me out with this!
The closed beta is going well and many bugs have been fixed in the past few days.
You can follow any changes on the repo as the code is open source.
You can find all the changelogs there as well from now on.
The app will be published to the play store in a few weeks, but there are still spots left for people that want to test it early.
If you want to test it send me a DM with your email address.
Keep up with this, it’s exactly what I need, I hope you will have lot of success with this app. I don’t want to bother creating my own dashboard, I love that this app does everything by itself. I found some bugs, I will let you know (I’m still configuring my HA, I used Openhab for years until now)
Thanks, it were a lot of sleepless nights to make this. V1.0.1 has been released and adds improvements to swiping and adds 4 new languages and RTL support.
Does this not work with non admin accounts? The initial login worked, but subsequent login after closing and reopening the app keeps triggering my HA IP ban.
@eriri The app should work for non-admin accounts. There is even a Cloud Component to control what non-admin users can and can’t do.
However it sounds like you use some kind of IP ban on HA side?
Would you be so kind to share me your Home Assistant log entries beginning with:
Login attempt or request with invalid authentication…
It is possible that it has to do with how HKI 7 refreshes the access token. If you share me your logs I can rule out what is causing it and if it can be fixed on the app side I will implement the fix.
I am just using the Home Assistant built in IP Ban
I kinda figured it out. During the initial setup, I put in a URL instead of an IP address. The URL is actually local only. Your app used it as a remote access URL by default. I then went to the settings and removed it from the remote access URL and filled the internal URL with that same address. After saving and closing the app, it the authentication errors started after I open back the app.
I fixed it by uninstalling and reinstalling the app to reset it, putting in the ip address during the initial setup, which detected as a internal URL this time. Then I changed the internal URL to my local only URL which seems to stick and work fine now.
Thanks, these logs help. The 403: Forbidden responses mean Home Assistant has already banned the device’s visible IP address.
Please open Home Assistant’s /config/ip_bans.yaml, remove the entry for the affected IP address, save the file, and restart Home Assistant. Afterward, opening /api/ without credentials should return 401 Unauthorized rather than 403 Forbidden.
HKI7 1.1.3 will be available tonight with changes intended to prevent rejected sessions from generating several simultaneous authentication attempts. Once available, please update to 1.1.3 and log in again if prompted. Let me know if the ban returns after updating.
@eriri Took forever before Google approved the update. But it should be live now. Could you try it and tell me if it has solved your issue? version is 1.1.3