Home Assistant uses Bundler, Homebrew and Cocoapods to manage build dependencies

Overview

Home Assistant for Apple Platforms

TestFlight Beta invite Download on the App Store GitHub issues License Apache 2.0

Getting Started

Home Assistant uses Bundler, Homebrew and Cocoapods to manage build dependencies. You'll need Xcode 13.1 (or later) which you can download from the App Store. You can get the app running using the following commands:

git clone https://github.com/home-assistant/iOS.git
cd iOS

# you must do one of the following, but you do not need to do all of them:

## install cocoapods via homebrew, use that
brew install cocoapods
pod install --repo-update

## install ruby via homebrew, use that
brew install [email protected]
/usr/local/opt/[email protected]/bin/bundle install
/usr/local/opt/[email protected]/bin/bundle exec pod install --repo-update

## install ruby via rbenv, use that
brew install rbenv ruby-build
rbenv install
bundle install
bundle exec pod install --repo-update

Once this completes, you can launch HomeAssistant.xcworkspace and run the App-Debug scheme onto your simulator or iOS device.

Testing just the frontend

To just test the frontend, you can use a simulator version built by our GitHub actions.

  1. Install Xcode from the App Store making sure it's at least the version noted above. You do not need to install or run anything else.
  2. Launch the simulator at /Applications/Xcode.app/Contents/Developer/Applications/Simulator.app or in Xcode under the Xcode menu > Open Developer Tool.
  3. Open a simulator under File > Open Simulator. You can install older versions of iOS in Xcode's Components preferences.
  4. Download a simulator build from the the GitHub action under "Artifacts."
  5. Drag the result .app on drop it on top of the simulator.
  6. Locate the app on the home screen and click it to launch.

The simulator behaves different than you might expect:

Action Effect
Click Tap
Click & drag Scroll
Hold ⌥ Add a second touch point
Hold ⇧⌥ Move both touch points
⌘←, ⌘→ Rotate
⌘S Take screenshot
⌘R Record video
⌘K Toggle software keyboard

You can now debug the WebView in this simulator build using Safari's Web Inspector:

  1. Make sure "Show Develop menu in menu bar" is enabled in Safari's Advanced preferences.
  2. Under the Develop menu, expand the "Simulator" menu for the simulator you've opened.
  3. Choose the WebView you want to inspect. A new window will open.

Code Signing

Although the app is set up to use Automatic provisioning for Debug builds, you'll need to customize a few of the options. This is because the app makes heavy use of entitlements that require code signing, even for simulator builds.

Edit the file Configuration/HomeAssistant.overrides.xcconfig (which will not exist by default and is ignored by git) and add the following:

DEVELOPMENT_TEAM = YourTeamID
BUNDLE_ID_PREFIX = some.bundle.prefix

Xcode should generate provisioning profiles in your Team ID and our configuration will disable features your team doesn't have like Critical Alerts. You can find your Team ID on Apple's developer portal; it looks something like ABCDEFG123.

Code style

Linters run as part of Pull Request checks. Additionally, some linting requirements can be autocorrected.

# checks for linting problems, doesn't fix
bundle exec fastlane lint
# checks for linting problems and fixes them
bundle exec fastlane autocorrect

In the Xcode project, the autocorrectable linters will not modify your source code but will provide warnings. This project uses several linters:

Continuous Integration

We use Github Actions alongside Fastlane to perform continuous integration both by unit testing and deploying to App Store Connect. Mac Developer ID builds are available as an artifact on every build of master.

Environment variables

Fastlane scripts read from the environment or .env file for configuration like team IDs. See .env.sample for available values.

Deployment

Although all the deployment is done through Github Actions, you can do it manually through Fastlane:

Deployment to App Store Connect

# creates the builds and uploads to the app store
# each save their artifacts to build/
bundle exec fastlane mac build
bundle exec fastlane ios build

Contributing

See CONTRIBUTING.md

LICENSE

Apache-2.0

Credits

The format and some content of this README.md comes from the SwipeIt project.

Comments
  • iOS 13.4 sensors don't update

    iOS 13.4 sensors don't update

    Hi,

    When I connect my iPad in my home to HomeAssistant with the companion app to display homeassistant. My log start shouting this. Like 124 times allready this day. But the ipad just works! But homeassistant is unhappy with something..

    2020-02-17 19:10:14 ERROR (MainThread) [homeassistant.components.mobile_app.webhook] Received invalid webhook payload: required key not provided @ data[5]['state']. Got None 2020-02-17 19:10:14 ERROR (MainThread) [homeassistant.components.mobile_app.webhook] Received invalid webhook payload: required key not provided @ data[5]['state']. Got None

    bug sensor 2020.1 
    opened by ghost 131
  • Accommodate multiple instances of Home Assistant from the app.

    Accommodate multiple instances of Home Assistant from the app.

    Accommodate multiple instances of Home Assistant from the app. It would be great to be able to save multiple URLs for Home, Office, Studio and be able to get notifications from all that are "enabled". I love the iOS app!

    ps. sorry I cant figure out how to tag this as a feature request

    enhancement 
    opened by swperic 124
  • Received invalid command: mobile_app/push_notification_channel

    Received invalid command: mobile_app/push_notification_channel

    iOS device model, version and app version

    Model Name: XS Software Version: 14.6 App version: 2021.7 (2021.200)

    Home Assistant Core Version

    core-2021.7.0b5 Describe the bug Bug also reported at core https://github.com/home-assistant/core/issues/52625 After restarting HA I receive an error from Home Assistant WebSocket API related to mobile_app And I do not recieven any notifications on my iPhone . After a reboot of my iPhone those work again. To Reproduce

    Expected behavior

    Screenshots

    Additional context

    Logger: homeassistant.components.websocket_api.http.connection
    Source: components/websocket_api/connection.py:89
    Integration: Home Assistant WebSocket API (documentation, issues)
    First occurred: 11:22:26 (110 occurrences)
    Last logged: 11:23:07
    
    [140131635737216] Received invalid command: mobile_app/push_notification_channel
    
    bug ios 
    opened by gieljnssns 76
  • Images no longer shown in notification (latest build)

    Images no longer shown in notification (latest build)

    @robbiet480 Just testing some new flows in Node Red and I've noticed that push messages with image_url no longer show the image...

    Example:

        image_url: "https://www.test.com.jpg",
        image_type: "jpg"
    
    notifications 
    opened by Swiftnesses 52
  • Mobile App integration – notifications stopped working

    Mobile App integration – notifications stopped working

    iOS device model, version and app version Model Name: iPhone 8 Software Version: 13.6 App version: 2020.4.1 (updated yesterday)

    Home Assistant Core Version HA version: 0.113.2 (updated today)

    Describe the bug I've updated the app yesterday and I was using it till now without any problems. I've restarted HA and host device a couple of times since then. I've also updated the HA to 0.113.2 from 0.112.4 few hours ago (and also restarted HA a couple of times since then). Right now, out of the blue, I have this problem with Mobile App integration that my HA instance can't send any notification to my mobile device. It was working today, but now isn't anymore.

    The only error that I'm getting is the one presented below. I've checked the integration and entities name. I've tried calling a notify service manually – same result.

    Screenshots Zrzut ekranu 2020-07-29 o 15 50 31

    bug notifications 
    opened by fi-sch 48
  • Not reporting away after Geographic Region Exited event

    Not reporting away after Geographic Region Exited event

    Model Name: iPhone 6s Software Version: 13.5.1 App version: 2020.1 (17)

    Home Assistant Core Version 0.111

    Describe the bug The app does no longer report "away" as it sends Geographic Region Exited event. The possition first updates to away when an Background Fetch notices that the phone is outside any defined zones. This have been working for over a year.

    To Reproduce Travel outside a zone and the phone location still reports in that zone until I enter a new zone or a Background Fetch is triggered. Expected behavior The phone location should report away when I leave a zone. Screenshots In my log I see that the iPhone is changing directly from Home (Hjemme) to work (Høllen). image Last week this worked fine: image iPhone app settings: image

    bug location 2020.3 
    opened by jorgror 47
  • Allow using installed client certificate for authentication

    Allow using installed client certificate for authentication

    My setup has an nginx server reverse-proxying requests to HA using HTTPS and mandating a client side certificate. Would it be possible for the app to show a list of installed profiles/certificates and use them for SSL challenges?

    Sadly, iOS's Safari has a bug where the client side certificate isn't used with websockets and my remote access to HA is unavailable ever since 0.38.

    enhancement 
    opened by shmuelzon 42
  • Companion app asks for credentials unnecessarily (iPhone)

    Companion app asks for credentials unnecessarily (iPhone)

    Hi,

    I'm logged in to my HA instance via iPhone app for few months. I noticed that the app asks me for login and pass but after pressing the refresh button (located in the right down of the login screen) app shows my lovelace screen (but without providing credentials). I have 4 iPhones conneted to my HA.

    In my opinion app shouldn't ask for the credentials if I'm not logged out.

    Best, Viv

    bug 2020.1 
    opened by VivantSenior 35
  • Location reporting timeliness

    Location reporting timeliness

    I remember reading Robbie's comments about the Apple code that controls when it reports location. Sounds a bit difficult to predict.

    Have you had a look at Locative's code? It's open source, and Locative itself has now stopped development. But I used it for a year or so prior to moving to the iOS app and found it opened my garage door when I entered my home zone very reliably. Close to 100% of the time it worked, and it passed the wife test :)

    That means it knew I had entered the home zone, and reported my location to HASS within about 20sec of entering the zone every time.

    I'm finding that the iOS app is nowhere near as quick (sometimes 10min later). Is it worth having a look into the Locative code to see why it reported so much more reliably? https://github.com/LocativeHQ

    Thx James

    location 
    opened by jjpeet 34
  • Mobile connection keeps banning app on duckdns

    Mobile connection keeps banning app on duckdns

    iOS device model, version and app version

    Model Name: iPhone 11 Pro Software Version: 14.4.1 App version: 2021.3 (2021.77)

    Home Assistant Core Version

    2021.3.4 Describe the bug

    Since 2 days, the iOS app does as above. I can always connect over Wifi, but when I disable the wifi on my iPhone, the iOS app gets banned on an IP address.(109.36.142.156), which is the mobile provider .

    Not always, immediately after a restart, I can connect, only after a while this gets blocked and banned. Cant seem to find any logic in events for this to happen.

    Using a browser window with the identical duckdns address works perfectly. Has something changed in the app logic?

    Ive also tried to delete the app and reinstall, but even that wont help, it immediately loads the old config, even though deleting the app warns one for also deleting all data.

    second to this, it wont connect over a .local connection either, complaining my computer is not allowed, even while its is connected to the trusted networks most definitely.

    To Reproduce

    Fresh restart (deleted ip-bans.yaml). Fresh app install (have it find the duckdns instance while being on wifi). connect ok,. turnoff wifi. still ok (over 4g, connecting to duckdns instance). after a while, this simply gets disconnected showing the orange cogwheel bottom right. reloading the app, or reconnecting is allowed only twice (but unsuccessful) and then gives the not allowed, because ip-bans has kicked in.

    Expected behavior

    This is only happening since a day or 2, maybe since 2021.3.4(?) not sure. would love the 'old' behavior back. NO matter which, always connectable over 4G data and duckdns.

    Screenshots

    Additional context

    bug ios 
    opened by Mariusthvdb 33
  • Location inaccurate

    Location inaccurate

    Firstly, THANK YOU ROBBIEE!

    Secondly, I'm still having issues with the iOS app location deciding I'm home when I'm not. I work 150m away from home. Life360 can cope with this and never decides I'm at home when I'm not. The iOS app has consistently decided that "meh, close enough!" and placed me at home when I'm at work. I'm on beta 2.0.0 build 44.

    My work zone is set to a 50m radius and so is my home.

    location 2020.1 
    opened by 26tajeen 32
  • iOS home assistant

    iOS home assistant

    iOS device model, version and app version

    Model Name: Software Version: App version:

    Home Assistant Core Version

    Describe the bug

    To Reproduce

    Expected behavior

    Screenshots

    Additional context

    bug ios 
    opened by Stephen-Hub-Wu 0
  • Actions selection keeps getting reverted

    Actions selection keeps getting reverted

    iOS device model, version and app version

    Model Name: iphone 12 pro Software Version: 16.2 App version: 2022.10.1

    Home Assistant Core Version

    2022.12.8

    Describe the bug When deselecting scenes under the actions screen in the companion setting these are not kept over time, I think when rebooting HA, but not sure. Seems to not be a problem with dynamically created scenes, only ones from integrations like Hue. To Reproduce

    Expected behavior Once deselected never reset.

    Screenshots

    Additional context

    bug ios 
    opened by eavanvalkenburg 0
  • MacOS companion creates iPad entity in devices, but no notification target

    MacOS companion creates iPad entity in devices, but no notification target

    I installed companion apps on both iPhone and Mac.

    I see mobile_app_klements_iphone but no corresponding entry for mac. In fact, there is no other mobile_app_* entry.

    If I send a notification with notify.notify, it lands on the iPhone, but not on Mac.

    What I would like to achieve is to have my Mac play a sound when a specific sensor value is reached. But I don't want to have to clear iPhone notifications.

    I tried removing iPhone app and only keeping Mac one. Also removing that registration and adding it back. Notify target is simply not created for Mac.

    In servers section I see that Local Push is Available (0) (after sending some test notifications via Developer Tools).

    I see the Mac (as iPad) in devices with all its sensors, it's just not possible to select is as a notification target.

    opened by klement 0
  • Negative numbers can't be entered in the iOS number picker

    Negative numbers can't be entered in the iOS number picker

    I'm trying to set a negative temperature threshold in an automation using Home Assistant on iOS, but the picker does not allow for negative numbers, so I have to use the web.

    home-assistant-number-no-negative

    Version: Home Assistant 2022.12.7 Frontend: 20221213.1

    opened by jolros 0
  • Add Malayalam language.

    Add Malayalam language.

    Discussed in https://github.com/home-assistant/iOS/discussions/2265

    Originally posted by arunshekher December 13, 2022 Dear Admins,

    Please add Malayalam (മലയാളം) language for Home Assistant iOS in Lokalise.

    I've already signed up in Lokalise and contributing to frontend internationalisation and joined the iOS translation team as well.

    Thanks and regards

    opened by arunshekher 1
Releases(release/2022.10.1/2022.424)
  • release/2022.10.1/2022.424(Oct 25, 2022)

  • release/2022.11/2022.414(Oct 19, 2022)

    • Improve login flow, especially when using untrusted certificates. No longer, on Mac, requires opening an external browser to log in.
    • Fixes another case of device name issues on iOS 16 when Local Push is enabled.
    • Fixes issues where deleted servers would return after deletion.
    • Fixes high CPU usage after deleting a server.
    • Updates dependencies and build tooling across the board.

    TestFlight (iOS, macOS) • App Store (iOS, macOS) • iOS 12+, macOS 10.15+

    Source code(tar.gz)
    Source code(zip)
    home-assistant-mac.zip(35.01 MB)
  • release/2022.10/2022.398(Oct 13, 2022)

  • release/2022.8/2022.387(Aug 18, 2022)

    • Adds periodic sensor updating while Local Push is connected
    • Adds “Full Screen” setting, to hide the status bar in the frontend
    • Improves error messages when secure connections fail when setting up a server
    • Allows trusting otherwise-invalid TLS certificates when setting up a server
    • Fixes non-frontend-based URLs (e.g. Frigate notifications) by opening them outside the frontend
    • Updates Material Design Icons to 7.0.96.

    TestFlight (iOS, macOS) • App Store (iOS, macOS) • iOS 12+, macOS 10.15+

    Source code(tar.gz)
    Source code(zip)
    home-assistant-mac.zip(34.22 MB)
  • release/2022.6/2022.385(Aug 17, 2022)

  • release/2022.6/2022.375(May 28, 2022)

  • release/2022.6/2022.366(May 11, 2022)

    • Adds "Full Screen" setting, to hide the status bar in the frontend
    • Improves the error messages when secure connections fail when setting up a server
    • Improves non-frontend-based URLs in notifications by opening them outside the frontend
    • Fixes the key used in encrypted webhook requests. Note that this means you will not be able to downgrade from this release.

    TestFlight (iOS, macOS) • App Store (iOS, macOS) • iOS 12+, macOS 10.15+

    Source code(tar.gz)
    Source code(zip)
    home-assistant-mac.zip(34.07 MB)
  • release/2022.3/2022.358(Mar 1, 2022)

    • Fix overlapping zones with zone-only privacy level
    • Fix importing audio for notifications failing if format is correct already
    • Fix WebView reloading itself when server hostname contains uppercase
    • Fix discovery of instances older than 0.110
    • Fix many “invalid authentication” errors from happening
    • Fix re-adding a just-deleted server saving incorrect information
    • Add copy option when tapping version number

    TestFlight (iOS, macOS) • App Store (iOS, macOS) • iOS 12+, macOS 10.15+

    Source code(tar.gz)
    Source code(zip)
    home-assistant-mac.zip(34.06 MB)
  • release/2022.3/2022.356(Feb 25, 2022)

  • release/2022.3/2022.355(Feb 24, 2022)

  • release/2022.2/2022.345(Jan 30, 2022)

    Privacy

    • Control the locations sent to your servers. Choose from sending exact coordinates (the existing behavior), the name of the current zone (e.g. Home or Work), or not sending locations at all. This requires core-2022.2 or later.
    • Choose whether sensors are sent to particular servers, either all on or all off.
    • Begins removing libraries used by the app which talk to third-party servers.

    Miscellaneous

    • Reduces data use by the app by enabling compression on the app's WebSocket connection.

    TestFlight (iOS, macOS) • App Store (iOS, macOS) • iOS 12+, macOS 10.15+

    Source code(tar.gz)
    Source code(zip)
    home-assistant-mac.zip(34.03 MB)
  • release/2022.2/2022.343(Jan 24, 2022)

    Privacy

    • Choose what kind of locations are sent to servers between: exact coordinates, zone names only, or no location data. This requires core-2022.2 in beta soon. For example, send "Home" or "Not Home" to a relative's Home Assistant, but exact coordinates to your own.
    • Choose whether sensors are sent to servers, either all on or all off.
    • Starts removing dependencies which talk to third-party servers, beginning with Sentry, the crash reporter. This is more philosophical than anything else—nothing personal was sent—but Apple's crash reporter is largely good enough now.

    Other

    • Enables compression on the app's WebSocket connection, which should reduce data use.

    TestFlight (iOS, macOS) • App Store (iOS, macOS) • iOS 12+, macOS 10.15+

    Source code(tar.gz)
    Source code(zip)
    home-assistant-mac.zip(34.02 MB)
  • release/2021.12.1/2021.327(Dec 21, 2021)

  • release/2021.12/2021.322(Dec 18, 2021)

    Multiple Servers

    • Add and manage additional servers in App Configuration.
    • App features are multi-server aware. For example, notifications work on all servers.
    • iOS: Swipe with three fingers left, right, or up to quickly switch between servers.

    Miscellaneous

    • Changes how Shortcuts run on iOS 14 or later and macOS 11 or later, hopefully improving reliability.
    • Notification categories are now fully deprecated and support for them will be removed in iOS-2022.4. It's time to transition to in-notification actions. See the docs.
    • iOS: Swipe left and right with two fingers to navigate forward and back in the frontend.
    • macOS: Adds Audio Output sensors, showing the current active audio device.
    • macOS: Renames Microphone to Audio Input for new installs.

    Onboarding Improvements

    • Adds button to export logs when showing an onboarding error to aid in bug reporting.
    • Fixes error message for the mobile_app component not being loaded.
    • Fixes error 404 when server URL has a trailing /.
    • Fixes connecting when the internal URL doesn’t work but the external does. The app will now use the external only for connecting.
    • Fixes Cloud not being enabled by default during onboarding.
    • Fixes 'timeout' errors during onboarding if only an internal URL is set in the server config.
    • Fixes potentially confusing error when "Local Network" privacy permission was not granted.
    • macOS: Fixes a case where onboarding would get stuck at Location permission.
    • macOS: Fixes a confusing situation where the app expects Safari to open during onboarding but there's a system bug preventing it.

    Bug fixes

    • Fixes time sensitive notification interruption levels not working.
    • Fixes avatar in settings showing a black line on some edges, depending on font sizes.
    • macOS: Fixes Focus changes causing incorrect/outdated information to be sent for other sensors.
    • iOS: Fixes AirPlay showing a different version of the frontend than what's on-screen
    • iOS: Improves the reliability of the "Local Push" status, which is now under the server rather than in Notifications.

    Known Issues

    • Actions, scene actions, and notification categories defined in the HA configuration with duplicate identifiers across multiple servers will fight each other; one server value will win.

    TestFlight (iOS, macOS) • App Store (iOS, macOS) • iOS 12+, macOS 10.15+

    Source code(tar.gz)
    Source code(zip)
    home-assistant-mac.zip(35.12 MB)
  • release/2021.12/2021.321(Dec 17, 2021)

    • Fixes time sensitive notification interruption levels
    • Fixes server version not being updated when upgrading
    • Fixes non-synced actions & complications for deleted servers
    • Fixes AirPlay showing a different version of the frontend than what's on-screen
    • Fixes Cloud Cloudhook URL usage when remote UI is not enabled

    The macOS app is now also available on TestFlight on macOS 12+.

    TestFlight (iOS, macOS) • App Store (iOS, macOS) • iOS 12+, macOS 10.15+

    Source code(tar.gz)
    Source code(zip)
    home-assistant-mac.zip(35.12 MB)
  • release/2021.12/2021.315(Dec 10, 2021)

  • release/2021.12/2021.312(Dec 8, 2021)

    • Add Audio Output sensors on macOS & rename Microphone to Audio Input (existing entity IDs won't change).
    • Add deprecation alert for notification categories. It's time to transition to in-notification actions. See the docs.
    • Fix avatar in settings showing a black line on some edges, depending on font sizes.
    • Fix complications not updating in 2021.12.
    • Log JavaScript errors encountered, which may help debug some problems in the frontend.

    The macOS app is now also available on TestFlight on macOS 12+.

    TestFlight (iOS, macOS) • App Store (iOS, macOS) • iOS 12+, macOS 10.15+

    Source code(tar.gz)
    Source code(zip)
    home-assistant-mac.zip(33.43 MB)
  • release/2021.12/2021.306(Dec 5, 2021)

    Added

    • Three-finger swipe-up: pick a server or open settings. Do the gestures in this release feel good?
    • Log export button when showing an onboarding error, to make bug reporting easier.

    Changed

    • Shortcuts on iOS 14 or later and macOS 11 or later now go through a different mechanism. Please report back if this improves or worsens Shortcuts; I believe it will make them more reliable.

    Fixed

    • Fixes Focus changes on macOS causing incorrect/outdated information to be sent for other sensors.
    • Fixes Cloud not being enabled by default during onboarding.
    • Fixes 'timeout' errors during onboarding if only an internal URL is set in the server config.
    • Fixes deleting a server and re-adding the same one occasionally using the deleted server's info.
    • Fixes some rare crashes that occur when accessing server info (aka randomly all the time).
    • Fixes some errors like "Could not communicate with background transfer service" in Shortcuts, probably.
    • Fixes potentially confusing error during onboarding when "Local Network" privacy permission was not granted.

    Known issues

    • Actions, scene actions, and notification categories defined in the HA configuration with duplicate identifiers across the multiple servers will fight each other; one server value will win.

    The macOS app is now available on TestFlight on macOS 12+.

    TestFlight (iOS, macOS) • App Store (iOS, macOS) • iOS 12+, macOS 10.15+

    Source code(tar.gz)
    Source code(zip)
    home-assistant-mac.zip(33.42 MB)
  • release/2021.12/2021.294(Dec 1, 2021)

    • Added a name setting of a server so you can name it "Parent's House" for just yourself.
    • Added swipe gestures: two-finger to go back/forward, three-finger to switch between servers (iOS only).
    • Fixes deleted servers being resurrected after deletion.
    • Fixes a case where macOS onboarding would get stuck at Location permission.
    • Fixes a confusing situation where the app expects Safari to open on macOS during onboarding but there's a system bug preventing it.
    • Fixes onboarding when the internal URL doesn't work, but the external does; the app will now use the external only for connecting.
    • Fixes a few visual bugs when viewing/editing Scene Actions.
    • Fixes the 'activate' button showing up when viewing a server when there's only one server.

    Known issues

    • Actions, scene actions, and notification categories defined in the HA configuration with duplicate identifiers across the multiple servers will fight each other; one server value will win.

    The macOS app is now available on TestFlight on macOS 12+.

    TestFlight (iOS, macOS) • App Store (iOS, macOS) • iOS 12+, macOS 10.15+

    Source code(tar.gz)
    Source code(zip)
    home-assistant-mac.zip(33.39 MB)
  • release/2021.12/2021.284(Nov 28, 2021)

    The Mac app is now also available on TestFlight for macOS 12+.

    Note: downgrading (back to 2021.11) from this release will require deleting your local actions, notification categories and watch complications.

    Multi-Server

    This is largely complete, but it could use extensive testing. Please report issues on GitHub, Discord or the Forums.

    • Add additional servers in App Configuration. Switch to them there as well (eventually this will be easier).
    • core-2021.10 is required for notification actions or attachments.
    • Action, Watch Complication and the macOS Menu Bar title template require selecting a server to act against.
    • When navigating to a my.home-assistant.io or homeassistant://navigate link, you'll be prompted which server to use.
    • Adding an additional server may require updating some existing Shortcuts.app shortcuts to specify which server use.

    Known issues

    • Actions, scene actions, and notification categories defined in the HA configuration with duplicate identifiers across the multiple servers will fight each other; one server value will win.

    Fixes

    • Provides clearer error if mobile_app is not loaded during onboarding.
    • Fix onboarding error 404 when URL has a trailing /.
    • Improves the reliability of the "Local Push" status, which is now under the server rather than in Notifications.

    Since the last beta

    • Fix crash on launch on watchOS and macOS in this beta.
    • Fix scene actions not being associated with the correct server.
    • Fix menu bar title template being unchangeable if you delete the server associated with it.

    TestFlight (iOS, macOS) • App Store (iOS, macOS) • iOS 12+, macOS 10.15+

    Source code(tar.gz)
    Source code(zip)
    home-assistant-mac.zip(33.11 MB)
  • release/2021.12/2021.278(Nov 28, 2021)

    Note: downgrading (back to 2021.11) from this release will require deleting your local actions, notification categories and watch complications.

    Multi-Server

    This is largely complete, but it could use extensive testing. Please report issues on GitHub, Discord or the Forums.

    • Add additional servers in App Configuration. Switch to them there as well (eventually this will be easier).
    • core-2021.10 is required for notification actions or attachments.
    • Action, Watch Complication and the macOS Menu Bar title template require selecting a server to act against.
    • When navigating to a my.home-assistant.io or homeassistant://navigate link, you'll be prompted which server to use.
    • Adding an additional server may require updating some existing Shortcuts.app shortcuts to specify which server use.

    Known issues

    • Actions, scene actions, and notification categories defined in the HA configuration with duplicate identifiers across the multiple servers will fight each other; one server value will win.

    Fixes

    • Provides clearer error if mobile_app is not loaded during onboarding.
    • Fix onboarding error 404 when URL has a trailing /.
    • Improves the reliability of the "Local Push" status, which is now under the server rather than in Notifications.

    TestFlight (iOS, macOS) • App Store (iOS, macOS) • iOS 12+, macOS 10.15+

    Source code(tar.gz)
    Source code(zip)
    home-assistant-mac.zip(33.13 MB)
  • release/2021.11.1/2021.266(Nov 11, 2021)

  • release/2021.11/2021.262(Nov 7, 2021)

    macOS 12

    • Supports time-sensitive notification interruption level. See the docs.
    • Adds binary_sensor.focus which reports on your device's focus state (aka do-not-disturb).
    • Dynamic notification actions can now have icons using SF Symbols; for example, sfsymbols:bell. See the docs.
    • Allows frontend microphone/camera access when the app has permission, rather than prompting each time.

    Onboarding

    • Simplifies and improves the steps necessary to set up the app.
    • Adds support for internal/external URLs.
    • Adds support for landscape, VoiceOver and Dynamic Type.
    • Prompts for missing permissions on app startup in a simpler flow.

    TestFlight (iOS) • App Store (iOS, macOS) • iOS 12+, macOS 10.15+

    Source code(tar.gz)
    Source code(zip)
    home-assistant-mac.zip(32.96 MB)
  • release/2021.11/2021.261(Oct 27, 2021)

    macOS 12

    • Supports time-sensitive notification interruption level. See the docs.
    • Adds binary_sensor.focus which reports on your device's focus state (aka do-not-disturb). This updates immediately in the background. You’ll need to enable permission in App Configuration > Sensors.
    • Dynamic notification actions can now have icons using SF Symbols; for example, sfsymbols:bell. See the docs.
    • Allows frontend microphone/camera access when the app has permission, rather than prompting each time.

    (This is what was made available in iOS 15 in the previous release.)

    Onboarding Improvements

    There's been a lot of changes to initial app setup; it could really use testing if you've got another device to test on, or want to onboard again.

    • Supports internal/external URL at setup time.
    • Handles device name already existing by prompting for a new choice.
    • Adds landscape, VoiceOver and Dynamic Type.
    • Many steps which previously could not be cancelled can now be cancelled.
    • Improves the time it takes to get through onboarding by consolidating or removing steps.
    • Simplifies permission granting after setting up the server to be a page per permission with a lot more details about what it gives you, and a more clear call to action on how to go forward.
    • When a permission has never been prompted, the app will now ask on startup to confirm/deny the preference. For example, this should now begin prompting for focus permission if it's never been requested. This should also improve onboarding after clearing privacy settings.

    TestFlight (iOS) • App Store (iOS, macOS) • iOS 12+, macOS 10.15+

    Source code(tar.gz)
    Source code(zip)
    home-assistant-mac.zip(32.96 MB)
  • release/2021.10/2021.247(Oct 6, 2021)

    iOS 15

    • Supports time-sensitive notification interruption level. See the docs.
    • Adds binary_sensor.focus which reports on your device's focus state (aka do-not-disturb). This updates immediately in the background. You’ll need to enable permission in App Configuration > Sensors.
    • Dynamic notification actions can now have icons using SF Symbols; for example, sfsymbols:bell. See the docs.
    • Allows frontend microphone/camera access when the app has permission, rather than prompting each time.

    (macOS 12 versions of these same features will be available at a later date.)

    Widget Updates

    • New “Open Page” widget to quickly open your "Lights" dashboard, History, Developer Tools, etc.
    • Increases the number of actions in most “Perform Action” widgets by 2x.
    • Fixes crashes and other errant behavior when opening from a widget repeatedly.

    Miscellaneous

    • Confirms local notifications with core 2021.10 or later, which eliminates potential missed notifications by falling back to non-local push.
    • Upgrades MaterialDesignIcons to 6.1.95.
    • Fixes a rare crash when sensors update and doing other network requests.
    • Reduces the verbosity of Shortcut results. For example, instead of "called service light.turn_on" it is now "done.”

    Mac

    • Adds support for dynamic notification actions and content on macOS 11+.

    TestFlight (iOS) • App Store (iOS, macOS) • iOS 12+, macOS 10.15+

    Source code(tar.gz)
    Source code(zip)
    home-assistant-mac.zip(33.01 MB)
  • release/2021.10/2021.246(Oct 3, 2021)

    🖥 &📱Both Platforms

    • Updated the appearance of the "Open Page" widget dramatically.
    • Updated the appearance of the "Perform Action" widget less dramatically (it has a small gradient in the background).
    • When a renamed-by-MDI icon is received for display in the App, the app will now transparently switch to the new name.

    TestFlight (iOS) • App Store (iOS, macOS) • iOS 12+, macOS 10.15+

    Source code(tar.gz)
    Source code(zip)
    home-assistant-mac.zip(33.01 MB)
  • release/2021.10/2021.243(Sep 29, 2021)

    🖥 &📱Both Platforms

    Adds a new Widget: "Open Page" which can jump to a frontend page.

    • For example, quickly open your "Lights" dashboard, History, etc.
    • This is the first Widget to perform network calls, which required work to make them resilient: you should never run into a case where the links to pages fail to show up (as long as other Widgets on the system work) as long as it worked in the past.
    • Creating, deleting or editing a Dashboard should (after 24 hours or launching the app) automatically update the Widget display, too.
    • Please report any instances of the above 2 things not being true.

    Increases the maximum number of actions the Perform Action Widget can handle:

    • small (1, previously 1) [Apple limitation]
    • medium (8, previously 4)
    • large (16, previously 8)
    • extra large (32) [new on iPadOS 15]

    This also fixes some crashes & bugs with tapping an action in a Widget, leaving the app, tapping another, etc.


    TestFlight (iOS) • App Store (iOS, macOS) • iOS 12+, macOS 10.15+

    Source code(tar.gz)
    Source code(zip)
    home-assistant-mac.zip(32.99 MB)
  • release/2021.10/2021.238(Sep 25, 2021)

    🖥 &📱Both Platforms

    • Confirmable local notifications in core-2021.10 (beta later this week). This eliminates potential missed notifications by falling back to non-local push.
    • Fixes a rare crash when sensors update and doing other network requests.
    • Reduces the verbosity of Shortcut results. For example, instead of "called service light.turn_on" it is now "done."

    📱 iOS 15

    • Icons in dynamic notification actions using SF Symbols; for example, sfsymbols:bell. See the documentation.
    • Allows frontend microphone/camera permission when the app has permission without prompting.
    • Adds focus permission to the onboarding screen and fixes a few visual and behavioral problems in permission granting.

    TestFlight (iOS) • App Store (iOS, macOS) • iOS 12+, macOS 10.15+

    Source code(tar.gz)
    Source code(zip)
    home-assistant-mac.zip(32.87 MB)
  • release/2021.10/2021.230(Sep 19, 2021)

    📱 iOS 15

    Adds support for time-sensitive notification interruption level. See the docs: https://companion.home-assistant.io/docs/notifications/notifications-basic/#interruption-level

    Adds binary_sensor.focus which reports on your device's focus state (aka do-not-disturb).

    • This updates immediately, even in the background.
    • For now, must manually enable the permission for this in App Configuration > Sensors

    You can install the iOS beta from TestFlight.

    🖥 &📱Both Platforms

    • Upgrades MaterialDesignIcons to 6.1.95.

    🖥 Mac-specific

    • Adds support for dynamic notification actions and content on macOS 11+.

    Note that macOS 12 support (for the iOS 15 features above) will come later this year, as Apple makes it difficult to do builds for both iOS 15 and macOS 12 at this time.

    This is a beta for macOS Catalina (10.15) or later. You can also install from the Mac App Store or disable beta updates in Preferences to stay on stable releases.

    Source code(tar.gz)
    Source code(zip)
    home-assistant-mac.zip(32.47 MB)
  • release/2021.8/2021.216(Aug 2, 2021)

    🖥 &📱Both Platforms

    • Prevents loading the WebView when launching the app in the background. This should reduce bandwidth, memory and battery usage of e.g. location updates which launch the app.
    • Notifications can now change badge values when sending a command like clear_notification.
    • Fixes a case where local push would get stuck not alerting.
    • Fixes some incorrect location update cases that happen in future versions of iOS.
    • Fixes error messages when initially connecting to a server fails for some reason.

    📱iOS-specific

    • Fixes playback of animated GIF notification attachments.

    🖥 Mac-specific

    • Fixes a crash when changing the active sensor's idle time setting; allows sub-minute idle time values.

    This is a stable for macOS Catalina (10.15) or later. You can also install from the Mac App Store or disable beta updates in Preferences to stay on stable releases.

    Source code(tar.gz)
    Source code(zip)
    home-assistant-mac.zip(31.70 MB)
Owner
Home Assistant
Open source home automation that puts local control and privacy first. Powered by a worldwide community of tinkerers and DIY enthusiasts.
Home Assistant
A simple health assistant app built in Swift5 for iPhone 📱

Health-Habit-Assistant A simple habit forming app build for iPhone in Swift 5 (iOS 11+) (This Project is designed to be used in China 4C Computer Comp

Masayuki Inamori 381 Dec 27, 2022
BeAware, The Deaf Assistant for iPhones

BeAware, The Deaf Assistant for iPhones Everyday Angela goes to high school by public transport in Detroit, and her hearing disability never affected

null 10 Jul 13, 2022
ModernRIBs is recreated by removing additional dependencies such as RxSwift from Uber's RIBs.

ModernRIBs is recreated by removing additional dependencies such as RxSwift from Uber's RIBs. Only Combine was used. All features provided by RIBs can

SeungYeop Yeom 184 Jan 2, 2023
An online community of professional chefs, home cooks, and food lovers worldwide

Yoke is an online community of professional chefs, home cooks, and food lovers worldwide. Whether you are looking for an expert or a home chef, a fanc

Laura Jelenich 3 Dec 8, 2021
SwiftUI mirroring of Instagram app Home screen

Instasoup Is a quick code excercise, where I wanted to do fast prototaping of the Instagram like home view screen in #SwiftUI Check the source code an

Robert Herdzik 11 Feb 27, 2022
Aquarium Life is an iPhone app for management of Home Aquariums

Aquarium life Aquarium Life is an iPhone app for management of Home Aquariums. The app was launched on Apple App Store in 2021 but removed after my me

Sahil Satralkar 3 Apr 11, 2022
yikyak-translate-ios - iOS Take Home Project

yikyak-translate-ios - iOS Take Home Project Before you start Make sure you have the latest stable version of Xcode and have a way to connect to a Git

null 0 Jun 11, 2022
IOS Dracker Payment - An iOS and React app to send/receive money and manage debt

An iOS and React app to send/receive money and manage debt. This app allows users to create transactions, add descriptions, tag images, tag notes, and manage them.

Dharmendra solanki 0 Jan 30, 2022
EzNews - A simple and easy to use News app for iOS and iPadOS. It uses NewsAPI as its backend

EzNews This was my first proper Swift app. Its a news app made for iOS and iPadO

Arnav Singhal 4 Apr 30, 2022
iOS Swift + Node.js app to manage and schedule twitter posts

PostManager iOS Swift + Node.js app to manage and schedule twitter posts (like buffer) Post Manager is an app built by me in free time, it's main feat

Tomasz Baranowicz 83 Aug 8, 2022
A App for Doctor to manage Patient's Information and Logistics Supplies

MckessonPlus A Project for HackDFW 2022 2nd Place at McKesson and 2nd Place at EssilorLuxottica A App for Doctor to manage Patient's Information and L

Frank Gao 2 Sep 27, 2022
Seaglass is a truly native macOS client for Matrix. It is written in Swift and uses the Cocoa user interface framework.

Seaglass is a truly native macOS client for Matrix. It is written in Swift and uses the Cocoa user interface framework.

null 1 Jan 17, 2022
SwiftUI-TodoList - This project uses MVVM architecture and UserDefaults to persist data

SwiftUI-TodoList | ├── SwiftUITodoList | ├── Library | ├── Models

Yezan Ahmed 0 Mar 9, 2022
IOS mobile application that uses URLSession and Firebase

DogApp IOS mobile application that uses URLSession and Firebase. First a dog ima

null 0 Feb 13, 2022
Simple application to manage your task in IOS

ToDoList-in-IOS Simple application to manage your task in IOS Functional Require

Yasir Siddique 2 Oct 31, 2022
iOS Open Source Application written in Swift. App to manage borrowed books at UFRGS using SABI.

RenovaLivrosUFRGS iOS Open Source Application written in Swift. App to manage borrowed books at UFRGS using SABI. App in portuguese, code and comments

Matheus Cavalca 5 Feb 10, 2022
TodoList-iOS-master - DailyCheck makes it easy to manage your to-dos by date

Daily Check DailyCheck makes it easy to manage your to-dos by date. App Store Do

Kushal Shingote 1 Feb 5, 2022
CRUD - A simple iOS App to manage tasks

CRUD App ⭐ The App ?? A simple iOS App to manage tasks Setup ??‍?? Clone the rep

null 1 Feb 4, 2022
A realistic reflective shimmer to SwiftUI Views that uses device orientation. Position any View relative to device orientation to appear as if through a window or reflected by the screen.

A 3d rotation effect that uses Core Motion to allow SwiftUI views to appear projected in a specific direction and distance relative to the device in r

Ryan Lintott 235 Dec 30, 2022