# RetroHA **RetroHA** is a lightweight and efficient dashboard for Home Assistant, specifically designed for legacy Android tablets intended to serve as wall-mounted home control panels. ## Key Features * **Bauhaus Canvas Engine**: A custom graphics engine. The interface does not use standard Android XML views but is manually rendered on a `Canvas`. This ensures extreme fluidity even on decade-old devices. * **Low-End Hardware Optimization**: Minimal RAM usage, no unnecessary libraries, and aggressive caching of graphical layouts. * **Bauhaus Design**: A minimalist aesthetic inspired by the Bauhaus school—high contrast, geometric shapes, and maximum legibility. * **Kiosk Mode**: Built-in "Wake Lock" support to prevent the screen from turning off while the panel is active. * **Rapid Control**: * Tile Click: Toggle or Execute. * Light Long Press: Brightness menu with "slide and release" gesture (auto-save). ## Libraries & Acknowledgments This project utilizes the following Open Source libraries (compliant with F-Droid requirements): * **Retrofit** (Square Inc.) — Apache License 2.0: Type-safe HTTP client for Android and Java. * **OkHttp** (Square Inc.) — Apache License 2.0: An efficient HTTP client for Android. * **Gson** (Google) — Apache License 2.0: A Java library that can be used to convert Java Objects into their JSON representation. * **MPAndroidChart** (PhilJay) — Apache License 2.0: A powerful Android chart view / graph view library. * **AndroidX Libraries** (Google) — Apache License 2.0: Component libraries for Android. ## Technical Requirements * **Android**: minSdk 14 (Support back to Android 4.0 ICS), optimized for Android 4.4+. * **Home Assistant**: Requires Server URL and a Long-Lived Access Token. ## Roadmap The current project status and planned features are detailed in [TASKS.md](./TASKS.md). ## License This project is licensed under the **GNU GPL v3**. See the repository for details.