Installing Breeze - monikapurpl3/breeze GitHub Wiki

Installing Breeze

There is no Play listing: this is a self-hosted app, so you install the APK yourself. Grab it from the releases page or from aspic, the project's host, then:

adb install -r Breeze-<version>.apk    # USB debugging on

…or copy the .apk to the phone and open it, allowing install unknown apps for your browser or file manager.

Android Auto in a real car is the one exception: a car lists Breeze only when it was installed from Google Play, so for that, see Android Auto.

Requirements: Android 7.0 (API 24) or newer. That is all — the app has two permissions, internet and vibrate.

First launch

  1. Enter the server address (e.g. https://breeze.example.com or http://192.168.1.10:8420), the access key from the server's config.json, and a device name — one is generated for you, like Sirocco-4820937, with a dice button to re-roll it.
  2. The app shows a one-time code.
  3. An admin approves it on the LAN: breeze-core approve <CODE> on the server. This is the step people do not expect, so the welcome screen says so before it happens.

Nothing is baked in. Switch servers or re-pair any time from Settings — see Multiple servers.

Building it yourself

Requirements: Flutter 3.44+, the Android SDK (API 36 for that Flutter version) and JDK 17 or 21.

flutter pub get
flutter build apk --release     # -> build/app/outputs/flutter-apk/app-release.apk

Signing your own releases, and everything else about the build: Building and releasing.

What needs which server version

Feature Needs
control, pairing, diagnostics any Breeze Core
add unit by IP, rename ≥ 2.2.0
batch state, remove unit ≥ 2.4.0
Ed25519 signing, scan-to-add, beep, live SSE ≥ 3.0.0
the Nerd screen ≥ 3.0.5
Programs the server's scheduler

Against an older server the app degrades rather than breaks: it falls back to bearer-token auth, manual add, and a 5-second poll.

⚠️ **GitHub.com Fallback** ⚠️