Initial commit

This commit is contained in:
Krzysztof Cieślik
2026-06-13 21:43:53 +02:00
commit 22a3e0fe7e
80 changed files with 4175 additions and 0 deletions

36
README.md Normal file
View File

@@ -0,0 +1,36 @@
# 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.