diff --git a/Home.md b/Home.md
index c16327e..53c4090 100644
--- a/Home.md
+++ b/Home.md
@@ -2,3 +2,4 @@
Welcome to the autogenerated API documentation.
- [Shared Module API Reference](shared/index)
+- [App Module API Reference](app/index)
diff --git a/app/com.example.retroha.data/-prefs/get-language.md b/app/com.example.retroha.data/-prefs/get-language.md
new file mode 100644
index 0000000..150cb33
--- /dev/null
+++ b/app/com.example.retroha.data/-prefs/get-language.md
@@ -0,0 +1,8 @@
+//[app](../../../index)/[com.example.retroha.data](../index)/[Prefs](index)/[getLanguage](get-language)
+
+# getLanguage
+
+[main]\
+fun [getLanguage](get-language)(context: <Error class: unknown class>): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)?
+
+Gets the currently selected app language code (e.g., "pl", "en").
diff --git a/app/com.example.retroha.data/-prefs/get-refresh-interval.md b/app/com.example.retroha.data/-prefs/get-refresh-interval.md
new file mode 100644
index 0000000..ed999c4
--- /dev/null
+++ b/app/com.example.retroha.data/-prefs/get-refresh-interval.md
@@ -0,0 +1,8 @@
+//[app](../../../index)/[com.example.retroha.data](../index)/[Prefs](index)/[getRefreshInterval](get-refresh-interval)
+
+# getRefreshInterval
+
+[main]\
+fun [getRefreshInterval](get-refresh-interval)(context: <Error class: unknown class>): [Long](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-long/index.html)
+
+Gets the background refresh interval in milliseconds. Defaults to 30s.
diff --git a/app/com.example.retroha.data/-prefs/get-selected-entities.md b/app/com.example.retroha.data/-prefs/get-selected-entities.md
new file mode 100644
index 0000000..36ae1f4
--- /dev/null
+++ b/app/com.example.retroha.data/-prefs/get-selected-entities.md
@@ -0,0 +1,8 @@
+//[app](../../../index)/[com.example.retroha.data](../index)/[Prefs](index)/[getSelectedEntities](get-selected-entities)
+
+# getSelectedEntities
+
+[main]\
+fun [getSelectedEntities](get-selected-entities)(context: <Error class: unknown class>): [Set](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin.collections/-set/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)>
+
+Gets the set of HA entity IDs selected to be displayed as widgets.
diff --git a/app/com.example.retroha.data/-prefs/get-token.md b/app/com.example.retroha.data/-prefs/get-token.md
new file mode 100644
index 0000000..771a786
--- /dev/null
+++ b/app/com.example.retroha.data/-prefs/get-token.md
@@ -0,0 +1,8 @@
+//[app](../../../index)/[com.example.retroha.data](../index)/[Prefs](index)/[getToken](get-token)
+
+# getToken
+
+[main]\
+fun [getToken](get-token)(context: <Error class: unknown class>): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)
+
+Gets the Home Assistant Long-Lived Access Token.
diff --git a/app/com.example.retroha.data/-prefs/get-url.md b/app/com.example.retroha.data/-prefs/get-url.md
new file mode 100644
index 0000000..89098b6
--- /dev/null
+++ b/app/com.example.retroha.data/-prefs/get-url.md
@@ -0,0 +1,8 @@
+//[app](../../../index)/[com.example.retroha.data](../index)/[Prefs](index)/[getUrl](get-url)
+
+# getUrl
+
+[main]\
+fun [getUrl](get-url)(context: <Error class: unknown class>): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)
+
+Gets the Home Assistant server URL. Defaults to "http://".
diff --git a/app/com.example.retroha.data/-prefs/index.md b/app/com.example.retroha.data/-prefs/index.md
new file mode 100644
index 0000000..0f298f1
--- /dev/null
+++ b/app/com.example.retroha.data/-prefs/index.md
@@ -0,0 +1,23 @@
+//[app](../../../index)/[com.example.retroha.data](../index)/[Prefs](index)
+
+# Prefs
+
+[main]\
+object [Prefs](index)
+
+Singleton object for managing application preferences and persistent state. Uses SharedPreferences to store connection settings and widget configurations.
+
+## Functions
+
+| Name | Summary |
+|---|---|
+| [getLanguage](get-language) | [main]
fun [getLanguage](get-language)(context: <Error class: unknown class>): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)?
Gets the currently selected app language code (e.g., "pl", "en"). |
+| [getRefreshInterval](get-refresh-interval) | [main]
fun [getRefreshInterval](get-refresh-interval)(context: <Error class: unknown class>): [Long](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-long/index.html)
Gets the background refresh interval in milliseconds. Defaults to 30s. |
+| [getSelectedEntities](get-selected-entities) | [main]
fun [getSelectedEntities](get-selected-entities)(context: <Error class: unknown class>): [Set](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin.collections/-set/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)>
Gets the set of HA entity IDs selected to be displayed as widgets. |
+| [getToken](get-token) | [main]
fun [getToken](get-token)(context: <Error class: unknown class>): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)
Gets the Home Assistant Long-Lived Access Token. |
+| [getUrl](get-url) | [main]
fun [getUrl](get-url)(context: <Error class: unknown class>): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)
Gets the Home Assistant server URL. Defaults to "http://". |
+| [setLanguage](set-language) | [main]
fun [setLanguage](set-language)(context: <Error class: unknown class>, lang: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)): <Error class: unknown class>
Saves the app language preference. |
+| [setRefreshInterval](set-refresh-interval) | [main]
fun [setRefreshInterval](set-refresh-interval)(context: <Error class: unknown class>, intervalMs: [Long](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-long/index.html)): <Error class: unknown class>
Saves the refresh interval in milliseconds. |
+| [setSelectedEntities](set-selected-entities) | [main]
fun [setSelectedEntities](set-selected-entities)(context: <Error class: unknown class>, entities: [Set](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin.collections/-set/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)>): <Error class: unknown class>
Saves the set of selected HA entity IDs. |
+| [setToken](set-token) | [main]
fun [setToken](set-token)(context: <Error class: unknown class>, token: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)): <Error class: unknown class>
Saves the Home Assistant Access Token. |
+| [setUrl](set-url) | [main]
fun [setUrl](set-url)(context: <Error class: unknown class>, url: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)): <Error class: unknown class>
Saves the Home Assistant server URL. |
diff --git a/app/com.example.retroha.data/-prefs/set-language.md b/app/com.example.retroha.data/-prefs/set-language.md
new file mode 100644
index 0000000..ca3277a
--- /dev/null
+++ b/app/com.example.retroha.data/-prefs/set-language.md
@@ -0,0 +1,8 @@
+//[app](../../../index)/[com.example.retroha.data](../index)/[Prefs](index)/[setLanguage](set-language)
+
+# setLanguage
+
+[main]\
+fun [setLanguage](set-language)(context: <Error class: unknown class>, lang: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)): <Error class: unknown class>
+
+Saves the app language preference.
diff --git a/app/com.example.retroha.data/-prefs/set-refresh-interval.md b/app/com.example.retroha.data/-prefs/set-refresh-interval.md
new file mode 100644
index 0000000..ea2a161
--- /dev/null
+++ b/app/com.example.retroha.data/-prefs/set-refresh-interval.md
@@ -0,0 +1,8 @@
+//[app](../../../index)/[com.example.retroha.data](../index)/[Prefs](index)/[setRefreshInterval](set-refresh-interval)
+
+# setRefreshInterval
+
+[main]\
+fun [setRefreshInterval](set-refresh-interval)(context: <Error class: unknown class>, intervalMs: [Long](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-long/index.html)): <Error class: unknown class>
+
+Saves the refresh interval in milliseconds.
diff --git a/app/com.example.retroha.data/-prefs/set-selected-entities.md b/app/com.example.retroha.data/-prefs/set-selected-entities.md
new file mode 100644
index 0000000..cb03b09
--- /dev/null
+++ b/app/com.example.retroha.data/-prefs/set-selected-entities.md
@@ -0,0 +1,8 @@
+//[app](../../../index)/[com.example.retroha.data](../index)/[Prefs](index)/[setSelectedEntities](set-selected-entities)
+
+# setSelectedEntities
+
+[main]\
+fun [setSelectedEntities](set-selected-entities)(context: <Error class: unknown class>, entities: [Set](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin.collections/-set/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)>): <Error class: unknown class>
+
+Saves the set of selected HA entity IDs.
diff --git a/app/com.example.retroha.data/-prefs/set-token.md b/app/com.example.retroha.data/-prefs/set-token.md
new file mode 100644
index 0000000..12ae70c
--- /dev/null
+++ b/app/com.example.retroha.data/-prefs/set-token.md
@@ -0,0 +1,8 @@
+//[app](../../../index)/[com.example.retroha.data](../index)/[Prefs](index)/[setToken](set-token)
+
+# setToken
+
+[main]\
+fun [setToken](set-token)(context: <Error class: unknown class>, token: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)): <Error class: unknown class>
+
+Saves the Home Assistant Access Token.
diff --git a/app/com.example.retroha.data/-prefs/set-url.md b/app/com.example.retroha.data/-prefs/set-url.md
new file mode 100644
index 0000000..f597fc6
--- /dev/null
+++ b/app/com.example.retroha.data/-prefs/set-url.md
@@ -0,0 +1,8 @@
+//[app](../../../index)/[com.example.retroha.data](../index)/[Prefs](index)/[setUrl](set-url)
+
+# setUrl
+
+[main]\
+fun [setUrl](set-url)(context: <Error class: unknown class>, url: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)): <Error class: unknown class>
+
+Saves the Home Assistant server URL.
diff --git a/app/com.example.retroha.data/index.md b/app/com.example.retroha.data/index.md
new file mode 100644
index 0000000..ab99b18
--- /dev/null
+++ b/app/com.example.retroha.data/index.md
@@ -0,0 +1,9 @@
+//[app](../../index)/[com.example.retroha.data](index)
+
+# Package-level declarations
+
+## Types
+
+| Name | Summary |
+|---|---|
+| [Prefs](-prefs/index) | [main]
object [Prefs](-prefs/index)
Singleton object for managing application preferences and persistent state. Uses SharedPreferences to store connection settings and widget configurations. |
diff --git a/app/com.example.retroha.i18n/-android-strings/-android-strings.md b/app/com.example.retroha.i18n/-android-strings/-android-strings.md
new file mode 100644
index 0000000..d7e995e
--- /dev/null
+++ b/app/com.example.retroha.i18n/-android-strings/-android-strings.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.i18n](../index)/[AndroidStrings](index)/[AndroidStrings](-android-strings)
+
+# AndroidStrings
+
+[main]\
+constructor(context: <Error class: unknown class>)
diff --git a/app/com.example.retroha.i18n/-android-strings/get.md b/app/com.example.retroha.i18n/-android-strings/get.md
new file mode 100644
index 0000000..a44ab49
--- /dev/null
+++ b/app/com.example.retroha.i18n/-android-strings/get.md
@@ -0,0 +1,8 @@
+//[app](../../../index)/[com.example.retroha.i18n](../index)/[AndroidStrings](index)/[get](get)
+
+# get
+
+[main]\
+open operator fun [get](get)(key: <Error class: unknown class>): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)
+
+Resolves the StringKey to an actual string from Android resources.
diff --git a/app/com.example.retroha.i18n/-android-strings/index.md b/app/com.example.retroha.i18n/-android-strings/index.md
new file mode 100644
index 0000000..b0ecf64
--- /dev/null
+++ b/app/com.example.retroha.i18n/-android-strings/index.md
@@ -0,0 +1,20 @@
+//[app](../../../index)/[com.example.retroha.i18n](../index)/[AndroidStrings](index)
+
+# AndroidStrings
+
+[main]\
+class [AndroidStrings](index)(context: <Error class: unknown class>)
+
+Android-specific implementation of the Strings interface. Bridges the universal StringKey to Android's `R.string` resource system.
+
+## Constructors
+
+| | |
+|---|---|
+| [AndroidStrings](-android-strings) | [main]
constructor(context: <Error class: unknown class>) |
+
+## Functions
+
+| Name | Summary |
+|---|---|
+| [get](get) | [main]
open operator fun [get](get)(key: <Error class: unknown class>): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)
Resolves the StringKey to an actual string from Android resources. |
diff --git a/app/com.example.retroha.i18n/-locale-helper/index.md b/app/com.example.retroha.i18n/-locale-helper/index.md
new file mode 100644
index 0000000..db1d2f9
--- /dev/null
+++ b/app/com.example.retroha.i18n/-locale-helper/index.md
@@ -0,0 +1,14 @@
+//[app](../../../index)/[com.example.retroha.i18n](../index)/[LocaleHelper](index)
+
+# LocaleHelper
+
+[main]\
+object [LocaleHelper](index)
+
+Utility for handling dynamic runtime locale changes in Android. Manages resource configuration updates and context wrapping.
+
+## Functions
+
+| Name | Summary |
+|---|---|
+| [setLocale](set-locale) | [main]
fun [setLocale](set-locale)(context: <Error class: unknown class>): <Error class: unknown class>
Applies the saved language preference to the given context. |
diff --git a/app/com.example.retroha.i18n/-locale-helper/set-locale.md b/app/com.example.retroha.i18n/-locale-helper/set-locale.md
new file mode 100644
index 0000000..7b823b4
--- /dev/null
+++ b/app/com.example.retroha.i18n/-locale-helper/set-locale.md
@@ -0,0 +1,20 @@
+//[app](../../../index)/[com.example.retroha.i18n](../index)/[LocaleHelper](index)/[setLocale](set-locale)
+
+# setLocale
+
+[main]\
+fun [setLocale](set-locale)(context: <Error class: unknown class>): <Error class: unknown class>
+
+Applies the saved language preference to the given context.
+
+#### Return
+
+A new context instance with the updated locale configuration.
+
+#### Parameters
+
+main
+
+| | |
+|---|---|
+| context | The base context to wrap or update. |
diff --git a/app/com.example.retroha.i18n/index.md b/app/com.example.retroha.i18n/index.md
new file mode 100644
index 0000000..8f34c7f
--- /dev/null
+++ b/app/com.example.retroha.i18n/index.md
@@ -0,0 +1,10 @@
+//[app](../../index)/[com.example.retroha.i18n](index)
+
+# Package-level declarations
+
+## Types
+
+| Name | Summary |
+|---|---|
+| [AndroidStrings](-android-strings/index) | [main]
class [AndroidStrings](-android-strings/index)(context: <Error class: unknown class>)
Android-specific implementation of the Strings interface. Bridges the universal StringKey to Android's `R.string` resource system. |
+| [LocaleHelper](-locale-helper/index) | [main]
object [LocaleHelper](-locale-helper/index)
Utility for handling dynamic runtime locale changes in Android. Manages resource configuration updates and context wrapping. |
diff --git a/app/com.example.retroha.network/-brightness-request/-brightness-request.md b/app/com.example.retroha.network/-brightness-request/-brightness-request.md
new file mode 100644
index 0000000..6025004
--- /dev/null
+++ b/app/com.example.retroha.network/-brightness-request/-brightness-request.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.network](../index)/[BrightnessRequest](index)/[BrightnessRequest](-brightness-request)
+
+# BrightnessRequest
+
+[main]\
+constructor(entity_id: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html), brightness: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html))
diff --git a/app/com.example.retroha.network/-brightness-request/brightness.md b/app/com.example.retroha.network/-brightness-request/brightness.md
new file mode 100644
index 0000000..454ebb9
--- /dev/null
+++ b/app/com.example.retroha.network/-brightness-request/brightness.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.network](../index)/[BrightnessRequest](index)/[brightness](brightness)
+
+# brightness
+
+[main]\
+val [brightness](brightness): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html)
diff --git a/app/com.example.retroha.network/-brightness-request/entity_id.md b/app/com.example.retroha.network/-brightness-request/entity_id.md
new file mode 100644
index 0000000..14d0e30
--- /dev/null
+++ b/app/com.example.retroha.network/-brightness-request/entity_id.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.network](../index)/[BrightnessRequest](index)/[entity_id](entity_id)
+
+# entity_id
+
+[main]\
+val [entity_id](entity_id): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)
diff --git a/app/com.example.retroha.network/-brightness-request/index.md b/app/com.example.retroha.network/-brightness-request/index.md
new file mode 100644
index 0000000..9378de1
--- /dev/null
+++ b/app/com.example.retroha.network/-brightness-request/index.md
@@ -0,0 +1,21 @@
+//[app](../../../index)/[com.example.retroha.network](../index)/[BrightnessRequest](index)
+
+# BrightnessRequest
+
+[main]\
+data class [BrightnessRequest](index)(val entity_id: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html), val brightness: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html))
+
+Request body for setting light brightness.
+
+## Constructors
+
+| | |
+|---|---|
+| [BrightnessRequest](-brightness-request) | [main]
constructor(entity_id: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html), brightness: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html)) |
+
+## Properties
+
+| Name | Summary |
+|---|---|
+| [brightness](brightness) | [main]
val [brightness](brightness): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html) |
+| [entity_id](entity_id) | [main]
val [entity_id](entity_id): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html) |
diff --git a/app/com.example.retroha.network/-ha-api-service/get-states.md b/app/com.example.retroha.network/-ha-api-service/get-states.md
new file mode 100644
index 0000000..be7a17d
--- /dev/null
+++ b/app/com.example.retroha.network/-ha-api-service/get-states.md
@@ -0,0 +1,8 @@
+//[app](../../../index)/[com.example.retroha.network](../index)/[HaApiService](index)/[getStates](get-states)
+
+# getStates
+
+[main]\
+abstract fun [getStates](get-states)(): <Error class: unknown class><[List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin.collections/-list/index.html)<[HaState](../-ha-state/index)>>
+
+Fetches the current state of all entities.
diff --git a/app/com.example.retroha.network/-ha-api-service/index.md b/app/com.example.retroha.network/-ha-api-service/index.md
new file mode 100644
index 0000000..eb05e4f
--- /dev/null
+++ b/app/com.example.retroha.network/-ha-api-service/index.md
@@ -0,0 +1,16 @@
+//[app](../../../index)/[com.example.retroha.network](../index)/[HaApiService](index)
+
+# HaApiService
+
+[main]\
+interface [HaApiService](index)
+
+Retrofit interface defining the Home Assistant REST API endpoints.
+
+## Functions
+
+| Name | Summary |
+|---|---|
+| [getStates](get-states) | [main]
abstract fun [getStates](get-states)(): <Error class: unknown class><[List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin.collections/-list/index.html)<[HaState](../-ha-state/index)>>
Fetches the current state of all entities. |
+| [setBrightness](set-brightness) | [main]
abstract fun [setBrightness](set-brightness)(body: [BrightnessRequest](../-brightness-request/index)): <Error class: unknown class><[List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin.collections/-list/index.html)<[HaState](../-ha-state/index)>>
Sets the specific brightness level for a light entity. |
+| [toggle](toggle) | [main]
abstract fun [toggle](toggle)(domain: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html), body: [ToggleRequest](../-toggle-request/index)): <Error class: unknown class><[List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin.collections/-list/index.html)<[HaState](../-ha-state/index)>>
Toggles the state of an entity in a specific domain. |
diff --git a/app/com.example.retroha.network/-ha-api-service/set-brightness.md b/app/com.example.retroha.network/-ha-api-service/set-brightness.md
new file mode 100644
index 0000000..f40ed86
--- /dev/null
+++ b/app/com.example.retroha.network/-ha-api-service/set-brightness.md
@@ -0,0 +1,8 @@
+//[app](../../../index)/[com.example.retroha.network](../index)/[HaApiService](index)/[setBrightness](set-brightness)
+
+# setBrightness
+
+[main]\
+abstract fun [setBrightness](set-brightness)(body: [BrightnessRequest](../-brightness-request/index)): <Error class: unknown class><[List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin.collections/-list/index.html)<[HaState](../-ha-state/index)>>
+
+Sets the specific brightness level for a light entity.
diff --git a/app/com.example.retroha.network/-ha-api-service/toggle.md b/app/com.example.retroha.network/-ha-api-service/toggle.md
new file mode 100644
index 0000000..e19ae9c
--- /dev/null
+++ b/app/com.example.retroha.network/-ha-api-service/toggle.md
@@ -0,0 +1,8 @@
+//[app](../../../index)/[com.example.retroha.network](../index)/[HaApiService](index)/[toggle](toggle)
+
+# toggle
+
+[main]\
+abstract fun [toggle](toggle)(domain: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html), body: [ToggleRequest](../-toggle-request/index)): <Error class: unknown class><[List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin.collections/-list/index.html)<[HaState](../-ha-state/index)>>
+
+Toggles the state of an entity in a specific domain.
diff --git a/app/com.example.retroha.network/-ha-attributes/-ha-attributes.md b/app/com.example.retroha.network/-ha-attributes/-ha-attributes.md
new file mode 100644
index 0000000..f4ab048
--- /dev/null
+++ b/app/com.example.retroha.network/-ha-attributes/-ha-attributes.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.network](../index)/[HaAttributes](index)/[HaAttributes](-ha-attributes)
+
+# HaAttributes
+
+[main]\
+constructor(friendly_name: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)?, unit_of_measurement: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)?, brightness: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html)? = null)
diff --git a/app/com.example.retroha.network/-ha-attributes/brightness.md b/app/com.example.retroha.network/-ha-attributes/brightness.md
new file mode 100644
index 0000000..e82a6a1
--- /dev/null
+++ b/app/com.example.retroha.network/-ha-attributes/brightness.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.network](../index)/[HaAttributes](index)/[brightness](brightness)
+
+# brightness
+
+[main]\
+val [brightness](brightness): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html)? = null
diff --git a/app/com.example.retroha.network/-ha-attributes/friendly_name.md b/app/com.example.retroha.network/-ha-attributes/friendly_name.md
new file mode 100644
index 0000000..a02f360
--- /dev/null
+++ b/app/com.example.retroha.network/-ha-attributes/friendly_name.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.network](../index)/[HaAttributes](index)/[friendly_name](friendly_name)
+
+# friendly_name
+
+[main]\
+val [friendly_name](friendly_name): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)?
diff --git a/app/com.example.retroha.network/-ha-attributes/index.md b/app/com.example.retroha.network/-ha-attributes/index.md
new file mode 100644
index 0000000..8412597
--- /dev/null
+++ b/app/com.example.retroha.network/-ha-attributes/index.md
@@ -0,0 +1,22 @@
+//[app](../../../index)/[com.example.retroha.network](../index)/[HaAttributes](index)
+
+# HaAttributes
+
+[main]\
+data class [HaAttributes](index)(val friendly_name: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)?, val unit_of_measurement: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)?, val brightness: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html)? = null)
+
+Data Transfer Object representing entity attributes (metadata).
+
+## Constructors
+
+| | |
+|---|---|
+| [HaAttributes](-ha-attributes) | [main]
constructor(friendly_name: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)?, unit_of_measurement: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)?, brightness: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html)? = null) |
+
+## Properties
+
+| Name | Summary |
+|---|---|
+| [brightness](brightness) | [main]
val [brightness](brightness): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html)? = null |
+| [friendly_name](friendly_name) | [main]
val [friendly_name](friendly_name): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)? |
+| [unit_of_measurement](unit_of_measurement) | [main]
val [unit_of_measurement](unit_of_measurement): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)? |
diff --git a/app/com.example.retroha.network/-ha-attributes/unit_of_measurement.md b/app/com.example.retroha.network/-ha-attributes/unit_of_measurement.md
new file mode 100644
index 0000000..8fdb1e8
--- /dev/null
+++ b/app/com.example.retroha.network/-ha-attributes/unit_of_measurement.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.network](../index)/[HaAttributes](index)/[unit_of_measurement](unit_of_measurement)
+
+# unit_of_measurement
+
+[main]\
+val [unit_of_measurement](unit_of_measurement): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)?
diff --git a/app/com.example.retroha.network/-ha-client/clear-cache.md b/app/com.example.retroha.network/-ha-client/clear-cache.md
new file mode 100644
index 0000000..3413986
--- /dev/null
+++ b/app/com.example.retroha.network/-ha-client/clear-cache.md
@@ -0,0 +1,8 @@
+//[app](../../../index)/[com.example.retroha.network](../index)/[HaClient](index)/[clearCache](clear-cache)
+
+# clearCache
+
+[main]\
+fun [clearCache](clear-cache)()
+
+Clears the current service instance, forcing a rebuild on next request.
diff --git a/app/com.example.retroha.network/-ha-client/get-service-for-test.md b/app/com.example.retroha.network/-ha-client/get-service-for-test.md
new file mode 100644
index 0000000..68a3cee
--- /dev/null
+++ b/app/com.example.retroha.network/-ha-client/get-service-for-test.md
@@ -0,0 +1,8 @@
+//[app](../../../index)/[com.example.retroha.network](../index)/[HaClient](index)/[getServiceForTest](get-service-for-test)
+
+# getServiceForTest
+
+[main]\
+fun [getServiceForTest](get-service-for-test)(url: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html), token: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)): [HaApiService](../-ha-api-service/index)
+
+Creates a temporary [HaApiService](../-ha-api-service/index) instance with specific credentials for testing.
diff --git a/app/com.example.retroha.network/-ha-client/get-service.md b/app/com.example.retroha.network/-ha-client/get-service.md
new file mode 100644
index 0000000..293d4a3
--- /dev/null
+++ b/app/com.example.retroha.network/-ha-client/get-service.md
@@ -0,0 +1,8 @@
+//[app](../../../index)/[com.example.retroha.network](../index)/[HaClient](index)/[getService](get-service)
+
+# getService
+
+[main]\
+fun [getService](get-service)(context: <Error class: unknown class>): [HaApiService](../-ha-api-service/index)
+
+Provides a cached or newly created [HaApiService](../-ha-api-service/index) based on saved preferences.
diff --git a/app/com.example.retroha.network/-ha-client/index.md b/app/com.example.retroha.network/-ha-client/index.md
new file mode 100644
index 0000000..56c8269
--- /dev/null
+++ b/app/com.example.retroha.network/-ha-client/index.md
@@ -0,0 +1,16 @@
+//[app](../../../index)/[com.example.retroha.network](../index)/[HaClient](index)
+
+# HaClient
+
+[main]\
+object [HaClient](index)
+
+Singleton factory for managing and providing the [HaApiService](../-ha-api-service/index) instance. Handles Retrofit initialization, interceptors for authentication, and caching.
+
+## Functions
+
+| Name | Summary |
+|---|---|
+| [clearCache](clear-cache) | [main]
fun [clearCache](clear-cache)()
Clears the current service instance, forcing a rebuild on next request. |
+| [getService](get-service) | [main]
fun [getService](get-service)(context: <Error class: unknown class>): [HaApiService](../-ha-api-service/index)
Provides a cached or newly created [HaApiService](../-ha-api-service/index) based on saved preferences. |
+| [getServiceForTest](get-service-for-test) | [main]
fun [getServiceForTest](get-service-for-test)(url: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html), token: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)): [HaApiService](../-ha-api-service/index)
Creates a temporary [HaApiService](../-ha-api-service/index) instance with specific credentials for testing. |
diff --git a/app/com.example.retroha.network/-ha-state-adapter/-ha-state-adapter.md b/app/com.example.retroha.network/-ha-state-adapter/-ha-state-adapter.md
new file mode 100644
index 0000000..57174a9
--- /dev/null
+++ b/app/com.example.retroha.network/-ha-state-adapter/-ha-state-adapter.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.network](../index)/[HaStateAdapter](index)/[HaStateAdapter](-ha-state-adapter)
+
+# HaStateAdapter
+
+[main]\
+constructor()
diff --git a/app/com.example.retroha.network/-ha-state-adapter/index.md b/app/com.example.retroha.network/-ha-state-adapter/index.md
new file mode 100644
index 0000000..ed70d41
--- /dev/null
+++ b/app/com.example.retroha.network/-ha-state-adapter/index.md
@@ -0,0 +1,21 @@
+//[app](../../../index)/[com.example.retroha.network](../index)/[HaStateAdapter](index)
+
+# HaStateAdapter
+
+[main]\
+class [HaStateAdapter](index)
+
+Custom GSON TypeAdapter for [HaState](../-ha-state/index). Manually parses the Home Assistant state object to handle dynamic attributes and deep nesting while maintaining high performance.
+
+## Constructors
+
+| | |
+|---|---|
+| [HaStateAdapter](-ha-state-adapter) | [main]
constructor() |
+
+## Functions
+
+| Name | Summary |
+|---|---|
+| [read](read) | [main]
open fun [read](read)(reader: <Error class: unknown class>): [HaState](../-ha-state/index)
Parses the JSON response from HA into a [HaState](../-ha-state/index) object. |
+| [write](write) | [main]
open fun [write](write)(out: <Error class: unknown class>, value: [HaState](../-ha-state/index)?)
Writing is not implemented as this adapter is read-only for current states. |
diff --git a/app/com.example.retroha.network/-ha-state-adapter/read.md b/app/com.example.retroha.network/-ha-state-adapter/read.md
new file mode 100644
index 0000000..23a5501
--- /dev/null
+++ b/app/com.example.retroha.network/-ha-state-adapter/read.md
@@ -0,0 +1,8 @@
+//[app](../../../index)/[com.example.retroha.network](../index)/[HaStateAdapter](index)/[read](read)
+
+# read
+
+[main]\
+open fun [read](read)(reader: <Error class: unknown class>): [HaState](../-ha-state/index)
+
+Parses the JSON response from HA into a [HaState](../-ha-state/index) object.
diff --git a/app/com.example.retroha.network/-ha-state-adapter/write.md b/app/com.example.retroha.network/-ha-state-adapter/write.md
new file mode 100644
index 0000000..c807aa1
--- /dev/null
+++ b/app/com.example.retroha.network/-ha-state-adapter/write.md
@@ -0,0 +1,8 @@
+//[app](../../../index)/[com.example.retroha.network](../index)/[HaStateAdapter](index)/[write](write)
+
+# write
+
+[main]\
+open fun [write](write)(out: <Error class: unknown class>, value: [HaState](../-ha-state/index)?)
+
+Writing is not implemented as this adapter is read-only for current states.
diff --git a/app/com.example.retroha.network/-ha-state/-ha-state.md b/app/com.example.retroha.network/-ha-state/-ha-state.md
new file mode 100644
index 0000000..f4cb6de
--- /dev/null
+++ b/app/com.example.retroha.network/-ha-state/-ha-state.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.network](../index)/[HaState](index)/[HaState](-ha-state)
+
+# HaState
+
+[main]\
+constructor(entity_id: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html), state: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html), attributes: [HaAttributes](../-ha-attributes/index))
diff --git a/app/com.example.retroha.network/-ha-state/attributes.md b/app/com.example.retroha.network/-ha-state/attributes.md
new file mode 100644
index 0000000..2b0207a
--- /dev/null
+++ b/app/com.example.retroha.network/-ha-state/attributes.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.network](../index)/[HaState](index)/[attributes](attributes)
+
+# attributes
+
+[main]\
+val [attributes](attributes): [HaAttributes](../-ha-attributes/index)
diff --git a/app/com.example.retroha.network/-ha-state/entity_id.md b/app/com.example.retroha.network/-ha-state/entity_id.md
new file mode 100644
index 0000000..327d011
--- /dev/null
+++ b/app/com.example.retroha.network/-ha-state/entity_id.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.network](../index)/[HaState](index)/[entity_id](entity_id)
+
+# entity_id
+
+[main]\
+val [entity_id](entity_id): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)
diff --git a/app/com.example.retroha.network/-ha-state/index.md b/app/com.example.retroha.network/-ha-state/index.md
new file mode 100644
index 0000000..3ebd70e
--- /dev/null
+++ b/app/com.example.retroha.network/-ha-state/index.md
@@ -0,0 +1,22 @@
+//[app](../../../index)/[com.example.retroha.network](../index)/[HaState](index)
+
+# HaState
+
+[main]\
+data class [HaState](index)(val entity_id: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html), val state: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html), val attributes: [HaAttributes](../-ha-attributes/index))
+
+Data Transfer Object representing the state of an entity returned by HA.
+
+## Constructors
+
+| | |
+|---|---|
+| [HaState](-ha-state) | [main]
constructor(entity_id: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html), state: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html), attributes: [HaAttributes](../-ha-attributes/index)) |
+
+## Properties
+
+| Name | Summary |
+|---|---|
+| [attributes](attributes) | [main]
val [attributes](attributes): [HaAttributes](../-ha-attributes/index) |
+| [entity_id](entity_id) | [main]
val [entity_id](entity_id): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html) |
+| [state](state) | [main]
val [state](state): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html) |
diff --git a/app/com.example.retroha.network/-ha-state/state.md b/app/com.example.retroha.network/-ha-state/state.md
new file mode 100644
index 0000000..4e7ed3b
--- /dev/null
+++ b/app/com.example.retroha.network/-ha-state/state.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.network](../index)/[HaState](index)/[state](state)
+
+# state
+
+[main]\
+val [state](state): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)
diff --git a/app/com.example.retroha.network/-toggle-request/-toggle-request.md b/app/com.example.retroha.network/-toggle-request/-toggle-request.md
new file mode 100644
index 0000000..f9c2e5b
--- /dev/null
+++ b/app/com.example.retroha.network/-toggle-request/-toggle-request.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.network](../index)/[ToggleRequest](index)/[ToggleRequest](-toggle-request)
+
+# ToggleRequest
+
+[main]\
+constructor(entity_id: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html))
diff --git a/app/com.example.retroha.network/-toggle-request/entity_id.md b/app/com.example.retroha.network/-toggle-request/entity_id.md
new file mode 100644
index 0000000..aab6c6b
--- /dev/null
+++ b/app/com.example.retroha.network/-toggle-request/entity_id.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.network](../index)/[ToggleRequest](index)/[entity_id](entity_id)
+
+# entity_id
+
+[main]\
+val [entity_id](entity_id): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)
diff --git a/app/com.example.retroha.network/-toggle-request/index.md b/app/com.example.retroha.network/-toggle-request/index.md
new file mode 100644
index 0000000..0258cae
--- /dev/null
+++ b/app/com.example.retroha.network/-toggle-request/index.md
@@ -0,0 +1,20 @@
+//[app](../../../index)/[com.example.retroha.network](../index)/[ToggleRequest](index)
+
+# ToggleRequest
+
+[main]\
+data class [ToggleRequest](index)(val entity_id: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html))
+
+Request body for the toggle service.
+
+## Constructors
+
+| | |
+|---|---|
+| [ToggleRequest](-toggle-request) | [main]
constructor(entity_id: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)) |
+
+## Properties
+
+| Name | Summary |
+|---|---|
+| [entity_id](entity_id) | [main]
val [entity_id](entity_id): [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html) |
diff --git a/app/com.example.retroha.network/index.md b/app/com.example.retroha.network/index.md
new file mode 100644
index 0000000..18396f4
--- /dev/null
+++ b/app/com.example.retroha.network/index.md
@@ -0,0 +1,15 @@
+//[app](../../index)/[com.example.retroha.network](index)
+
+# Package-level declarations
+
+## Types
+
+| Name | Summary |
+|---|---|
+| [BrightnessRequest](-brightness-request/index) | [main]
data class [BrightnessRequest](-brightness-request/index)(val entity_id: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html), val brightness: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html))
Request body for setting light brightness. |
+| [HaApiService](-ha-api-service/index) | [main]
interface [HaApiService](-ha-api-service/index)
Retrofit interface defining the Home Assistant REST API endpoints. |
+| [HaAttributes](-ha-attributes/index) | [main]
data class [HaAttributes](-ha-attributes/index)(val friendly_name: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)?, val unit_of_measurement: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)?, val brightness: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html)? = null)
Data Transfer Object representing entity attributes (metadata). |
+| [HaClient](-ha-client/index) | [main]
object [HaClient](-ha-client/index)
Singleton factory for managing and providing the [HaApiService](-ha-api-service/index) instance. Handles Retrofit initialization, interceptors for authentication, and caching. |
+| [HaState](-ha-state/index) | [main]
data class [HaState](-ha-state/index)(val entity_id: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html), val state: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html), val attributes: [HaAttributes](-ha-attributes/index))
Data Transfer Object representing the state of an entity returned by HA. |
+| [HaStateAdapter](-ha-state-adapter/index) | [main]
class [HaStateAdapter](-ha-state-adapter/index)
Custom GSON TypeAdapter for [HaState](-ha-state/index). Manually parses the Home Assistant state object to handle dynamic attributes and deep nesting while maintaining high performance. |
+| [ToggleRequest](-toggle-request/index) | [main]
data class [ToggleRequest](-toggle-request/index)(val entity_id: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html))
Request body for the toggle service. |
diff --git a/app/com.example.retroha.ui/-bauhaus-checkbox/-bauhaus-checkbox.md b/app/com.example.retroha.ui/-bauhaus-checkbox/-bauhaus-checkbox.md
new file mode 100644
index 0000000..5527008
--- /dev/null
+++ b/app/com.example.retroha.ui/-bauhaus-checkbox/-bauhaus-checkbox.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[BauhausCheckbox](index)/[BauhausCheckbox](-bauhaus-checkbox)
+
+# BauhausCheckbox
+
+[main]\
+constructor(context: <Error class: unknown class>)
diff --git a/app/com.example.retroha.ui/-bauhaus-checkbox/index.md b/app/com.example.retroha.ui/-bauhaus-checkbox/index.md
new file mode 100644
index 0000000..3fd9ba0
--- /dev/null
+++ b/app/com.example.retroha.ui/-bauhaus-checkbox/index.md
@@ -0,0 +1,27 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[BauhausCheckbox](index)
+
+# BauhausCheckbox
+
+[main]\
+class [BauhausCheckbox](index)(context: <Error class: unknown class>)
+
+A custom checkbox view designed with Bauhaus aesthetics. Uses sharp geometric shapes and high-contrast colors.
+
+## Constructors
+
+| | |
+|---|---|
+| [BauhausCheckbox](-bauhaus-checkbox) | [main]
constructor(context: <Error class: unknown class>) |
+
+## Properties
+
+| Name | Summary |
+|---|---|
+| [isChecked](is-checked) | [main]
var [isChecked](is-checked): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-boolean/index.html)
Current state of the checkbox. Triggers redraw on change. |
+
+## Functions
+
+| Name | Summary |
+|---|---|
+| [onDraw](on-draw) | [main]
open fun [onDraw](on-draw)(canvas: <Error class: unknown class>) |
+| [onMeasure](on-measure) | [main]
open fun [onMeasure](on-measure)(widthMeasureSpec: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html), heightMeasureSpec: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html)) |
diff --git a/app/com.example.retroha.ui/-bauhaus-checkbox/is-checked.md b/app/com.example.retroha.ui/-bauhaus-checkbox/is-checked.md
new file mode 100644
index 0000000..014dbf3
--- /dev/null
+++ b/app/com.example.retroha.ui/-bauhaus-checkbox/is-checked.md
@@ -0,0 +1,8 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[BauhausCheckbox](index)/[isChecked](is-checked)
+
+# isChecked
+
+[main]\
+var [isChecked](is-checked): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-boolean/index.html)
+
+Current state of the checkbox. Triggers redraw on change.
diff --git a/app/com.example.retroha.ui/-bauhaus-checkbox/on-draw.md b/app/com.example.retroha.ui/-bauhaus-checkbox/on-draw.md
new file mode 100644
index 0000000..935cccc
--- /dev/null
+++ b/app/com.example.retroha.ui/-bauhaus-checkbox/on-draw.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[BauhausCheckbox](index)/[onDraw](on-draw)
+
+# onDraw
+
+[main]\
+open fun [onDraw](on-draw)(canvas: <Error class: unknown class>)
diff --git a/app/com.example.retroha.ui/-bauhaus-checkbox/on-measure.md b/app/com.example.retroha.ui/-bauhaus-checkbox/on-measure.md
new file mode 100644
index 0000000..fae19de
--- /dev/null
+++ b/app/com.example.retroha.ui/-bauhaus-checkbox/on-measure.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[BauhausCheckbox](index)/[onMeasure](on-measure)
+
+# onMeasure
+
+[main]\
+open fun [onMeasure](on-measure)(widthMeasureSpec: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html), heightMeasureSpec: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html))
diff --git a/app/com.example.retroha.ui/-entity-selection-adapter/-entity-selection-adapter.md b/app/com.example.retroha.ui/-entity-selection-adapter/-entity-selection-adapter.md
new file mode 100644
index 0000000..f8a08bb
--- /dev/null
+++ b/app/com.example.retroha.ui/-entity-selection-adapter/-entity-selection-adapter.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[EntitySelectionAdapter](index)/[EntitySelectionAdapter](-entity-selection-adapter)
+
+# EntitySelectionAdapter
+
+[main]\
+constructor(context: <Error class: unknown class>, items: [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin.collections/-list/index.html)<[HaState](../../com.example.retroha.network/-ha-state/index)>, selectedEntities: [Set](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin.collections/-set/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)>)
diff --git a/app/com.example.retroha.ui/-entity-selection-adapter/get-count.md b/app/com.example.retroha.ui/-entity-selection-adapter/get-count.md
new file mode 100644
index 0000000..20373f0
--- /dev/null
+++ b/app/com.example.retroha.ui/-entity-selection-adapter/get-count.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[EntitySelectionAdapter](index)/[getCount](get-count)
+
+# getCount
+
+[main]\
+open fun [getCount](get-count)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html)
diff --git a/app/com.example.retroha.ui/-entity-selection-adapter/get-item-id.md b/app/com.example.retroha.ui/-entity-selection-adapter/get-item-id.md
new file mode 100644
index 0000000..3628598
--- /dev/null
+++ b/app/com.example.retroha.ui/-entity-selection-adapter/get-item-id.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[EntitySelectionAdapter](index)/[getItemId](get-item-id)
+
+# getItemId
+
+[main]\
+open fun [getItemId](get-item-id)(position: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html)): [Long](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-long/index.html)
diff --git a/app/com.example.retroha.ui/-entity-selection-adapter/get-item.md b/app/com.example.retroha.ui/-entity-selection-adapter/get-item.md
new file mode 100644
index 0000000..1ba137f
--- /dev/null
+++ b/app/com.example.retroha.ui/-entity-selection-adapter/get-item.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[EntitySelectionAdapter](index)/[getItem](get-item)
+
+# getItem
+
+[main]\
+open fun [getItem](get-item)(position: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html)): [HaState](../../com.example.retroha.network/-ha-state/index)
diff --git a/app/com.example.retroha.ui/-entity-selection-adapter/get-view.md b/app/com.example.retroha.ui/-entity-selection-adapter/get-view.md
new file mode 100644
index 0000000..b79fcb1
--- /dev/null
+++ b/app/com.example.retroha.ui/-entity-selection-adapter/get-view.md
@@ -0,0 +1,8 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[EntitySelectionAdapter](index)/[getView](get-view)
+
+# getView
+
+[main]\
+open fun [getView](get-view)(position: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html), convertView: <Error class: unknown class>?, parent: <Error class: unknown class>): <Error class: unknown class>
+
+Resolves the view for a specific row in the list.
diff --git a/app/com.example.retroha.ui/-entity-selection-adapter/index.md b/app/com.example.retroha.ui/-entity-selection-adapter/index.md
new file mode 100644
index 0000000..86cbe15
--- /dev/null
+++ b/app/com.example.retroha.ui/-entity-selection-adapter/index.md
@@ -0,0 +1,23 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[EntitySelectionAdapter](index)
+
+# EntitySelectionAdapter
+
+[main]\
+class [EntitySelectionAdapter](index)(context: <Error class: unknown class>, items: [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin.collections/-list/index.html)<[HaState](../../com.example.retroha.network/-ha-state/index)>, selectedEntities: [Set](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin.collections/-set/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)>)
+
+Adapter for the entity browser list. Displays Home Assistant entities with a [BauhausCheckbox](../-bauhaus-checkbox/index) for selection.
+
+## Constructors
+
+| | |
+|---|---|
+| [EntitySelectionAdapter](-entity-selection-adapter) | [main]
constructor(context: <Error class: unknown class>, items: [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin.collections/-list/index.html)<[HaState](../../com.example.retroha.network/-ha-state/index)>, selectedEntities: [Set](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin.collections/-set/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)>) |
+
+## Functions
+
+| Name | Summary |
+|---|---|
+| [getCount](get-count) | [main]
open fun [getCount](get-count)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html) |
+| [getItem](get-item) | [main]
open fun [getItem](get-item)(position: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html)): [HaState](../../com.example.retroha.network/-ha-state/index) |
+| [getItemId](get-item-id) | [main]
open fun [getItemId](get-item-id)(position: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html)): [Long](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-long/index.html) |
+| [getView](get-view) | [main]
open fun [getView](get-view)(position: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html), convertView: <Error class: unknown class>?, parent: <Error class: unknown class>): <Error class: unknown class>
Resolves the view for a specific row in the list. |
diff --git a/app/com.example.retroha.ui/-fonts/-b-o-l-d.md b/app/com.example.retroha.ui/-fonts/-b-o-l-d.md
new file mode 100644
index 0000000..c28d9a5
--- /dev/null
+++ b/app/com.example.retroha.ui/-fonts/-b-o-l-d.md
@@ -0,0 +1,8 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[Fonts](index)/[BOLD](-b-o-l-d)
+
+# BOLD
+
+[main]\
+val [BOLD](-b-o-l-d): <Error class: unknown class>
+
+The bold monospace typeface for headers and labels.
diff --git a/app/com.example.retroha.ui/-fonts/-r-e-g-u-l-a-r.md b/app/com.example.retroha.ui/-fonts/-r-e-g-u-l-a-r.md
new file mode 100644
index 0000000..ad09df4
--- /dev/null
+++ b/app/com.example.retroha.ui/-fonts/-r-e-g-u-l-a-r.md
@@ -0,0 +1,8 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[Fonts](index)/[REGULAR](-r-e-g-u-l-a-r)
+
+# REGULAR
+
+[main]\
+val [REGULAR](-r-e-g-u-l-a-r): <Error class: unknown class>
+
+The standard monospace typeface for regular text.
diff --git a/app/com.example.retroha.ui/-fonts/index.md b/app/com.example.retroha.ui/-fonts/index.md
new file mode 100644
index 0000000..18ad0cd
--- /dev/null
+++ b/app/com.example.retroha.ui/-fonts/index.md
@@ -0,0 +1,15 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[Fonts](index)
+
+# Fonts
+
+[main]\
+object [Fonts](index)
+
+Central repository for custom Typefaces used in the application. Ensures consistent typography across manually drawn UI components.
+
+## Properties
+
+| Name | Summary |
+|---|---|
+| [BOLD](-b-o-l-d) | [main]
val [BOLD](-b-o-l-d): <Error class: unknown class>
The bold monospace typeface for headers and labels. |
+| [REGULAR](-r-e-g-u-l-a-r) | [main]
val [REGULAR](-r-e-g-u-l-a-r): <Error class: unknown class>
The standard monospace typeface for regular text. |
diff --git a/app/com.example.retroha.ui/-ha-icons/draw.md b/app/com.example.retroha.ui/-ha-icons/draw.md
new file mode 100644
index 0000000..4261520
--- /dev/null
+++ b/app/com.example.retroha.ui/-ha-icons/draw.md
@@ -0,0 +1,21 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[HaIcons](index)/[draw](draw)
+
+# draw
+
+[main]\
+fun [draw](draw)(canvas: <Error class: unknown class>, domain: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html), x: [Float](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-float/index.html), y: [Float](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-float/index.html), size: [Float](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-float/index.html), color: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html))
+
+Renders a domain-specific icon.
+
+#### Parameters
+
+main
+
+| | |
+|---|---|
+| canvas | The canvas to draw on. |
+| domain | The HA domain string (e.g., "light", "switch"). |
+| x | X coordinate for the top-left corner of the icon bounds. |
+| y | Y coordinate for the top-left corner of the icon bounds. |
+| size | Diameter/Side length of the square icon area. |
+| color | The color to use for rendering. |
diff --git a/app/com.example.retroha.ui/-ha-icons/index.md b/app/com.example.retroha.ui/-ha-icons/index.md
new file mode 100644
index 0000000..0f04f58
--- /dev/null
+++ b/app/com.example.retroha.ui/-ha-icons/index.md
@@ -0,0 +1,14 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[HaIcons](index)
+
+# HaIcons
+
+[main]\
+object [HaIcons](index)
+
+Utility for drawing Home Assistant domain icons directly onto a Canvas. Uses purely geometric Bauhaus-style shapes for high performance and stylistic consistency.
+
+## Functions
+
+| Name | Summary |
+|---|---|
+| [draw](draw) | [main]
fun [draw](draw)(canvas: <Error class: unknown class>, domain: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html), x: [Float](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-float/index.html), y: [Float](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-float/index.html), size: [Float](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-float/index.html), color: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html))
Renders a domain-specific icon. |
diff --git a/app/com.example.retroha.ui/-language-icon-drawable/-language-icon-drawable.md b/app/com.example.retroha.ui/-language-icon-drawable/-language-icon-drawable.md
new file mode 100644
index 0000000..c4238aa
--- /dev/null
+++ b/app/com.example.retroha.ui/-language-icon-drawable/-language-icon-drawable.md
@@ -0,0 +1,14 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[LanguageIconDrawable](index)/[LanguageIconDrawable](-language-icon-drawable)
+
+# LanguageIconDrawable
+
+[main]\
+constructor(sizePx: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html))
+
+#### Parameters
+
+main
+
+| | |
+|---|---|
+| sizePx | The intrinsic size of the drawable in pixels. |
diff --git a/app/com.example.retroha.ui/-language-icon-drawable/draw.md b/app/com.example.retroha.ui/-language-icon-drawable/draw.md
new file mode 100644
index 0000000..0a53919
--- /dev/null
+++ b/app/com.example.retroha.ui/-language-icon-drawable/draw.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[LanguageIconDrawable](index)/[draw](draw)
+
+# draw
+
+[main]\
+open fun [draw](draw)(canvas: <Error class: unknown class>)
diff --git a/app/com.example.retroha.ui/-language-icon-drawable/get-intrinsic-height.md b/app/com.example.retroha.ui/-language-icon-drawable/get-intrinsic-height.md
new file mode 100644
index 0000000..5eb7ed9
--- /dev/null
+++ b/app/com.example.retroha.ui/-language-icon-drawable/get-intrinsic-height.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[LanguageIconDrawable](index)/[getIntrinsicHeight](get-intrinsic-height)
+
+# getIntrinsicHeight
+
+[main]\
+open fun [getIntrinsicHeight](get-intrinsic-height)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html)
diff --git a/app/com.example.retroha.ui/-language-icon-drawable/get-intrinsic-width.md b/app/com.example.retroha.ui/-language-icon-drawable/get-intrinsic-width.md
new file mode 100644
index 0000000..d835c1f
--- /dev/null
+++ b/app/com.example.retroha.ui/-language-icon-drawable/get-intrinsic-width.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[LanguageIconDrawable](index)/[getIntrinsicWidth](get-intrinsic-width)
+
+# getIntrinsicWidth
+
+[main]\
+open fun [getIntrinsicWidth](get-intrinsic-width)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html)
diff --git a/app/com.example.retroha.ui/-language-icon-drawable/get-opacity.md b/app/com.example.retroha.ui/-language-icon-drawable/get-opacity.md
new file mode 100644
index 0000000..97b4252
--- /dev/null
+++ b/app/com.example.retroha.ui/-language-icon-drawable/get-opacity.md
@@ -0,0 +1,14 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[LanguageIconDrawable](index)/[getOpacity](get-opacity)
+
+# getOpacity
+
+[main]\
+open fun [~~getOpacity~~](get-opacity)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html)
+
+---
+
+### Deprecated
+
+Deprecated in Java
+
+---
diff --git a/app/com.example.retroha.ui/-language-icon-drawable/index.md b/app/com.example.retroha.ui/-language-icon-drawable/index.md
new file mode 100644
index 0000000..1a59701
--- /dev/null
+++ b/app/com.example.retroha.ui/-language-icon-drawable/index.md
@@ -0,0 +1,32 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[LanguageIconDrawable](index)
+
+# LanguageIconDrawable
+
+class [LanguageIconDrawable](index)(sizePx: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html))
+
+A custom Drawable representing a simplified globe icon. Used in the UI to indicate language settings.
+
+#### Parameters
+
+main
+
+| | |
+|---|---|
+| sizePx | The intrinsic size of the drawable in pixels. |
+
+## Constructors
+
+| | |
+|---|---|
+| [LanguageIconDrawable](-language-icon-drawable) | [main]
constructor(sizePx: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html)) |
+
+## Functions
+
+| Name | Summary |
+|---|---|
+| [draw](draw) | [main]
open fun [draw](draw)(canvas: <Error class: unknown class>) |
+| [getIntrinsicHeight](get-intrinsic-height) | [main]
open fun [getIntrinsicHeight](get-intrinsic-height)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html) |
+| [getIntrinsicWidth](get-intrinsic-width) | [main]
open fun [getIntrinsicWidth](get-intrinsic-width)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html) |
+| [getOpacity](get-opacity) | [main]
open fun [~~getOpacity~~](get-opacity)(): [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html) |
+| [setAlpha](set-alpha) | [main]
open fun [setAlpha](set-alpha)(alpha: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html)) |
+| [setColorFilter](set-color-filter) | [main]
open fun [setColorFilter](set-color-filter)(colorFilter: <Error class: unknown class>?) |
diff --git a/app/com.example.retroha.ui/-language-icon-drawable/set-alpha.md b/app/com.example.retroha.ui/-language-icon-drawable/set-alpha.md
new file mode 100644
index 0000000..e0c0dc2
--- /dev/null
+++ b/app/com.example.retroha.ui/-language-icon-drawable/set-alpha.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[LanguageIconDrawable](index)/[setAlpha](set-alpha)
+
+# setAlpha
+
+[main]\
+open fun [setAlpha](set-alpha)(alpha: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html))
diff --git a/app/com.example.retroha.ui/-language-icon-drawable/set-color-filter.md b/app/com.example.retroha.ui/-language-icon-drawable/set-color-filter.md
new file mode 100644
index 0000000..c2e604f
--- /dev/null
+++ b/app/com.example.retroha.ui/-language-icon-drawable/set-color-filter.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[LanguageIconDrawable](index)/[setColorFilter](set-color-filter)
+
+# setColorFilter
+
+[main]\
+open fun [setColorFilter](set-color-filter)(colorFilter: <Error class: unknown class>?)
diff --git a/app/com.example.retroha.ui/-light-control-dialog/-light-control-dialog.md b/app/com.example.retroha.ui/-light-control-dialog/-light-control-dialog.md
new file mode 100644
index 0000000..ce04e15
--- /dev/null
+++ b/app/com.example.retroha.ui/-light-control-dialog/-light-control-dialog.md
@@ -0,0 +1,17 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[LightControlDialog](index)/[LightControlDialog](-light-control-dialog)
+
+# LightControlDialog
+
+[main]\
+constructor(context: <Error class: unknown class>, entityName: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html), initialBrightness: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html), onBrightnessChanged: ([Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html)) -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-unit/index.html))
+
+#### Parameters
+
+main
+
+| | |
+|---|---|
+| context | The activity context. |
+| entityName | Friendly name of the light to display. |
+| initialBrightness | The brightness level (0-255) when the dialog is opened. |
+| onBrightnessChanged | Callback triggered when the user finishes adjusting the slider. |
diff --git a/app/com.example.retroha.ui/-light-control-dialog/index.md b/app/com.example.retroha.ui/-light-control-dialog/index.md
new file mode 100644
index 0000000..410adb4
--- /dev/null
+++ b/app/com.example.retroha.ui/-light-control-dialog/index.md
@@ -0,0 +1,30 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[LightControlDialog](index)
+
+# LightControlDialog
+
+class [LightControlDialog](index)(context: <Error class: unknown class>, entityName: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html), initialBrightness: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html), onBrightnessChanged: ([Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html)) -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-unit/index.html))
+
+A custom dialog for controlling the brightness of a light entity. Features a minimalist Bauhaus design and automatic updates on slider release.
+
+#### Parameters
+
+main
+
+| | |
+|---|---|
+| context | The activity context. |
+| entityName | Friendly name of the light to display. |
+| initialBrightness | The brightness level (0-255) when the dialog is opened. |
+| onBrightnessChanged | Callback triggered when the user finishes adjusting the slider. |
+
+## Constructors
+
+| | |
+|---|---|
+| [LightControlDialog](-light-control-dialog) | [main]
constructor(context: <Error class: unknown class>, entityName: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html), initialBrightness: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html), onBrightnessChanged: ([Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html)) -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-unit/index.html)) |
+
+## Functions
+
+| Name | Summary |
+|---|---|
+| [onCreate](on-create) | [main]
open fun [onCreate](on-create)(savedInstanceState: <Error class: unknown class>?) |
diff --git a/app/com.example.retroha.ui/-light-control-dialog/on-create.md b/app/com.example.retroha.ui/-light-control-dialog/on-create.md
new file mode 100644
index 0000000..1d82841
--- /dev/null
+++ b/app/com.example.retroha.ui/-light-control-dialog/on-create.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[LightControlDialog](index)/[onCreate](on-create)
+
+# onCreate
+
+[main]\
+open fun [onCreate](on-create)(savedInstanceState: <Error class: unknown class>?)
diff --git a/app/com.example.retroha.ui/-widget-adapter/-widget-adapter.md b/app/com.example.retroha.ui/-widget-adapter/-widget-adapter.md
new file mode 100644
index 0000000..90e1cf7
--- /dev/null
+++ b/app/com.example.retroha.ui/-widget-adapter/-widget-adapter.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[WidgetAdapter](index)/[WidgetAdapter](-widget-adapter)
+
+# WidgetAdapter
+
+[main]\
+constructor(context: <Error class: unknown class>, initialItems: [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin.collections/-list/index.html)<<Error class: unknown class>>)
diff --git a/app/com.example.retroha.ui/-widget-adapter/get-count.md b/app/com.example.retroha.ui/-widget-adapter/get-count.md
new file mode 100644
index 0000000..f8d4955
--- /dev/null
+++ b/app/com.example.retroha.ui/-widget-adapter/get-count.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[WidgetAdapter](index)/[getCount](get-count)
+
+# getCount
+
+[main]\
+open fun [getCount](get-count)(): <Error class: unknown class>
diff --git a/app/com.example.retroha.ui/-widget-adapter/get-item-id.md b/app/com.example.retroha.ui/-widget-adapter/get-item-id.md
new file mode 100644
index 0000000..b23250c
--- /dev/null
+++ b/app/com.example.retroha.ui/-widget-adapter/get-item-id.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[WidgetAdapter](index)/[getItemId](get-item-id)
+
+# getItemId
+
+[main]\
+open fun [getItemId](get-item-id)(position: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html)): <Error class: unknown class>
diff --git a/app/com.example.retroha.ui/-widget-adapter/get-item.md b/app/com.example.retroha.ui/-widget-adapter/get-item.md
new file mode 100644
index 0000000..8b8eabc
--- /dev/null
+++ b/app/com.example.retroha.ui/-widget-adapter/get-item.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[WidgetAdapter](index)/[getItem](get-item)
+
+# getItem
+
+[main]\
+open fun [getItem](get-item)(position: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html)): <Error class: unknown class>
diff --git a/app/com.example.retroha.ui/-widget-adapter/get-view.md b/app/com.example.retroha.ui/-widget-adapter/get-view.md
new file mode 100644
index 0000000..2f83273
--- /dev/null
+++ b/app/com.example.retroha.ui/-widget-adapter/get-view.md
@@ -0,0 +1,8 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[WidgetAdapter](index)/[getView](get-view)
+
+# getView
+
+[main]\
+open fun [getView](get-view)(position: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html), convertView: <Error class: unknown class>?, parent: <Error class: unknown class>): <Error class: unknown class>
+
+Provides or recycles a [WidgetCardView](../-widget-card-view/index) for the grid.
diff --git a/app/com.example.retroha.ui/-widget-adapter/has-stable-ids.md b/app/com.example.retroha.ui/-widget-adapter/has-stable-ids.md
new file mode 100644
index 0000000..a4475be
--- /dev/null
+++ b/app/com.example.retroha.ui/-widget-adapter/has-stable-ids.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[WidgetAdapter](index)/[hasStableIds](has-stable-ids)
+
+# hasStableIds
+
+[main]\
+open fun [hasStableIds](has-stable-ids)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-boolean/index.html)
diff --git a/app/com.example.retroha.ui/-widget-adapter/index.md b/app/com.example.retroha.ui/-widget-adapter/index.md
new file mode 100644
index 0000000..9e2e0ca
--- /dev/null
+++ b/app/com.example.retroha.ui/-widget-adapter/index.md
@@ -0,0 +1,32 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[WidgetAdapter](index)
+
+# WidgetAdapter
+
+[main]\
+class [WidgetAdapter](index)(context: <Error class: unknown class>, initialItems: [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin.collections/-list/index.html)<<Error class: unknown class>>)
+
+Adapter for the main dashboard grid. Manages the lifecycle and data binding for [WidgetCardView](../-widget-card-view/index) instances.
+
+## Constructors
+
+| | |
+|---|---|
+| [WidgetAdapter](-widget-adapter) | [main]
constructor(context: <Error class: unknown class>, initialItems: [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin.collections/-list/index.html)<<Error class: unknown class>>) |
+
+## Properties
+
+| Name | Summary |
+|---|---|
+| [onLongToggle](on-long-toggle) | [main]
var [onLongToggle](on-long-toggle): (<Error class: unknown class>) -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-unit/index.html)?
Callback for long clicks (more info / brightness dialog). |
+| [onToggle](on-toggle) | [main]
var [onToggle](on-toggle): (<Error class: unknown class>) -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-unit/index.html)?
Callback for short clicks (toggle/execute action). |
+
+## Functions
+
+| Name | Summary |
+|---|---|
+| [getCount](get-count) | [main]
open fun [getCount](get-count)(): <Error class: unknown class> |
+| [getItem](get-item) | [main]
open fun [getItem](get-item)(position: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html)): <Error class: unknown class> |
+| [getItemId](get-item-id) | [main]
open fun [getItemId](get-item-id)(position: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html)): <Error class: unknown class> |
+| [getView](get-view) | [main]
open fun [getView](get-view)(position: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html), convertView: <Error class: unknown class>?, parent: <Error class: unknown class>): <Error class: unknown class>
Provides or recycles a [WidgetCardView](../-widget-card-view/index) for the grid. |
+| [hasStableIds](has-stable-ids) | [main]
open fun [hasStableIds](has-stable-ids)(): [Boolean](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-boolean/index.html) |
+| [updateItems](update-items) | [main]
fun [updateItems](update-items)(newItems: [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin.collections/-list/index.html)<<Error class: unknown class>>)
Updates the list of items displayed in the grid. |
diff --git a/app/com.example.retroha.ui/-widget-adapter/on-long-toggle.md b/app/com.example.retroha.ui/-widget-adapter/on-long-toggle.md
new file mode 100644
index 0000000..a6227d1
--- /dev/null
+++ b/app/com.example.retroha.ui/-widget-adapter/on-long-toggle.md
@@ -0,0 +1,8 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[WidgetAdapter](index)/[onLongToggle](on-long-toggle)
+
+# onLongToggle
+
+[main]\
+var [onLongToggle](on-long-toggle): (<Error class: unknown class>) -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-unit/index.html)?
+
+Callback for long clicks (more info / brightness dialog).
diff --git a/app/com.example.retroha.ui/-widget-adapter/on-toggle.md b/app/com.example.retroha.ui/-widget-adapter/on-toggle.md
new file mode 100644
index 0000000..766a2b4
--- /dev/null
+++ b/app/com.example.retroha.ui/-widget-adapter/on-toggle.md
@@ -0,0 +1,8 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[WidgetAdapter](index)/[onToggle](on-toggle)
+
+# onToggle
+
+[main]\
+var [onToggle](on-toggle): (<Error class: unknown class>) -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-unit/index.html)?
+
+Callback for short clicks (toggle/execute action).
diff --git a/app/com.example.retroha.ui/-widget-adapter/update-items.md b/app/com.example.retroha.ui/-widget-adapter/update-items.md
new file mode 100644
index 0000000..9dcb1cc
--- /dev/null
+++ b/app/com.example.retroha.ui/-widget-adapter/update-items.md
@@ -0,0 +1,8 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[WidgetAdapter](index)/[updateItems](update-items)
+
+# updateItems
+
+[main]\
+fun [updateItems](update-items)(newItems: [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin.collections/-list/index.html)<<Error class: unknown class>>)
+
+Updates the list of items displayed in the grid.
diff --git a/app/com.example.retroha.ui/-widget-card-view/-widget-card-view.md b/app/com.example.retroha.ui/-widget-card-view/-widget-card-view.md
new file mode 100644
index 0000000..e1585c7
--- /dev/null
+++ b/app/com.example.retroha.ui/-widget-card-view/-widget-card-view.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[WidgetCardView](index)/[WidgetCardView](-widget-card-view)
+
+# WidgetCardView
+
+[main]\
+constructor(context: <Error class: unknown class>)
diff --git a/app/com.example.retroha.ui/-widget-card-view/bind.md b/app/com.example.retroha.ui/-widget-card-view/bind.md
new file mode 100644
index 0000000..29c3239
--- /dev/null
+++ b/app/com.example.retroha.ui/-widget-card-view/bind.md
@@ -0,0 +1,16 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[WidgetCardView](index)/[bind](bind)
+
+# bind
+
+[main]\
+fun [bind](bind)(cfg: <Error class: unknown class>)
+
+Binds new data to the widget and updates the visual state. Triggers layout recalculation if text content or view width has changed.
+
+#### Parameters
+
+main
+
+| | |
+|---|---|
+| cfg | The new configuration data for this widget. |
diff --git a/app/com.example.retroha.ui/-widget-card-view/drawable-state-changed.md b/app/com.example.retroha.ui/-widget-card-view/drawable-state-changed.md
new file mode 100644
index 0000000..d055d17
--- /dev/null
+++ b/app/com.example.retroha.ui/-widget-card-view/drawable-state-changed.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[WidgetCardView](index)/[drawableStateChanged](drawable-state-changed)
+
+# drawableStateChanged
+
+[main]\
+open fun [drawableStateChanged](drawable-state-changed)()
diff --git a/app/com.example.retroha.ui/-widget-card-view/index.md b/app/com.example.retroha.ui/-widget-card-view/index.md
new file mode 100644
index 0000000..3998cef
--- /dev/null
+++ b/app/com.example.retroha.ui/-widget-card-view/index.md
@@ -0,0 +1,31 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[WidgetCardView](index)
+
+# WidgetCardView
+
+[main]\
+class [WidgetCardView](index)(context: <Error class: unknown class>)
+
+A highly optimized custom View that renders a single Home Assistant entity card. Part of the "Bauhaus Canvas" engine, it avoids XML overhead by manually drawing everything. Supports state-based coloring, pulsing animations for transitions, and haptic feedback.
+
+## Constructors
+
+| | |
+|---|---|
+| [WidgetCardView](-widget-card-view) | [main]
constructor(context: <Error class: unknown class>) |
+
+## Properties
+
+| Name | Summary |
+|---|---|
+| [onLongToggle](on-long-toggle) | [main]
var [onLongToggle](on-long-toggle): (<Error class: unknown class>) -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-unit/index.html)?
Callback for long clicks (more info / brightness dialog). |
+| [onToggle](on-toggle) | [main]
var [onToggle](on-toggle): (<Error class: unknown class>) -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-unit/index.html)?
Callback for short clicks (toggle/execute action). |
+
+## Functions
+
+| Name | Summary |
+|---|---|
+| [bind](bind) | [main]
fun [bind](bind)(cfg: <Error class: unknown class>)
Binds new data to the widget and updates the visual state. Triggers layout recalculation if text content or view width has changed. |
+| [drawableStateChanged](drawable-state-changed) | [main]
open fun [drawableStateChanged](drawable-state-changed)() |
+| [onDraw](on-draw) | [main]
open fun [onDraw](on-draw)(canvas: <Error class: unknown class>) |
+| [onMeasure](on-measure) | [main]
open fun [onMeasure](on-measure)(widthMeasureSpec: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html), heightMeasureSpec: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html)) |
+| [onSizeChanged](on-size-changed) | [main]
open fun [onSizeChanged](on-size-changed)(w: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html), h: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html), oldw: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html), oldh: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html)) |
diff --git a/app/com.example.retroha.ui/-widget-card-view/on-draw.md b/app/com.example.retroha.ui/-widget-card-view/on-draw.md
new file mode 100644
index 0000000..ec5fcec
--- /dev/null
+++ b/app/com.example.retroha.ui/-widget-card-view/on-draw.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[WidgetCardView](index)/[onDraw](on-draw)
+
+# onDraw
+
+[main]\
+open fun [onDraw](on-draw)(canvas: <Error class: unknown class>)
diff --git a/app/com.example.retroha.ui/-widget-card-view/on-long-toggle.md b/app/com.example.retroha.ui/-widget-card-view/on-long-toggle.md
new file mode 100644
index 0000000..a6f69ce
--- /dev/null
+++ b/app/com.example.retroha.ui/-widget-card-view/on-long-toggle.md
@@ -0,0 +1,8 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[WidgetCardView](index)/[onLongToggle](on-long-toggle)
+
+# onLongToggle
+
+[main]\
+var [onLongToggle](on-long-toggle): (<Error class: unknown class>) -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-unit/index.html)?
+
+Callback for long clicks (more info / brightness dialog).
diff --git a/app/com.example.retroha.ui/-widget-card-view/on-measure.md b/app/com.example.retroha.ui/-widget-card-view/on-measure.md
new file mode 100644
index 0000000..5334dfb
--- /dev/null
+++ b/app/com.example.retroha.ui/-widget-card-view/on-measure.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[WidgetCardView](index)/[onMeasure](on-measure)
+
+# onMeasure
+
+[main]\
+open fun [onMeasure](on-measure)(widthMeasureSpec: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html), heightMeasureSpec: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html))
diff --git a/app/com.example.retroha.ui/-widget-card-view/on-size-changed.md b/app/com.example.retroha.ui/-widget-card-view/on-size-changed.md
new file mode 100644
index 0000000..24c94a9
--- /dev/null
+++ b/app/com.example.retroha.ui/-widget-card-view/on-size-changed.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[WidgetCardView](index)/[onSizeChanged](on-size-changed)
+
+# onSizeChanged
+
+[main]\
+open fun [onSizeChanged](on-size-changed)(w: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html), h: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html), oldw: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html), oldh: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html))
diff --git a/app/com.example.retroha.ui/-widget-card-view/on-toggle.md b/app/com.example.retroha.ui/-widget-card-view/on-toggle.md
new file mode 100644
index 0000000..0418f6d
--- /dev/null
+++ b/app/com.example.retroha.ui/-widget-card-view/on-toggle.md
@@ -0,0 +1,8 @@
+//[app](../../../index)/[com.example.retroha.ui](../index)/[WidgetCardView](index)/[onToggle](on-toggle)
+
+# onToggle
+
+[main]\
+var [onToggle](on-toggle): (<Error class: unknown class>) -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-unit/index.html)?
+
+Callback for short clicks (toggle/execute action).
diff --git a/app/com.example.retroha.ui/index.md b/app/com.example.retroha.ui/index.md
new file mode 100644
index 0000000..afa8eff
--- /dev/null
+++ b/app/com.example.retroha.ui/index.md
@@ -0,0 +1,16 @@
+//[app](../../index)/[com.example.retroha.ui](index)
+
+# Package-level declarations
+
+## Types
+
+| Name | Summary |
+|---|---|
+| [BauhausCheckbox](-bauhaus-checkbox/index) | [main]
class [BauhausCheckbox](-bauhaus-checkbox/index)(context: <Error class: unknown class>)
A custom checkbox view designed with Bauhaus aesthetics. Uses sharp geometric shapes and high-contrast colors. |
+| [EntitySelectionAdapter](-entity-selection-adapter/index) | [main]
class [EntitySelectionAdapter](-entity-selection-adapter/index)(context: <Error class: unknown class>, items: [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin.collections/-list/index.html)<[HaState](../com.example.retroha.network/-ha-state/index)>, selectedEntities: [Set](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin.collections/-set/index.html)<[String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html)>)
Adapter for the entity browser list. Displays Home Assistant entities with a [BauhausCheckbox](-bauhaus-checkbox/index) for selection. |
+| [Fonts](-fonts/index) | [main]
object [Fonts](-fonts/index)
Central repository for custom Typefaces used in the application. Ensures consistent typography across manually drawn UI components. |
+| [HaIcons](-ha-icons/index) | [main]
object [HaIcons](-ha-icons/index)
Utility for drawing Home Assistant domain icons directly onto a Canvas. Uses purely geometric Bauhaus-style shapes for high performance and stylistic consistency. |
+| [LanguageIconDrawable](-language-icon-drawable/index) | [main]
class [LanguageIconDrawable](-language-icon-drawable/index)(sizePx: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html))
A custom Drawable representing a simplified globe icon. Used in the UI to indicate language settings. |
+| [LightControlDialog](-light-control-dialog/index) | [main]
class [LightControlDialog](-light-control-dialog/index)(context: <Error class: unknown class>, entityName: [String](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-string/index.html), initialBrightness: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html), onBrightnessChanged: ([Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html)) -> [Unit](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-unit/index.html))
A custom dialog for controlling the brightness of a light entity. Features a minimalist Bauhaus design and automatic updates on slider release. |
+| [WidgetAdapter](-widget-adapter/index) | [main]
class [WidgetAdapter](-widget-adapter/index)(context: <Error class: unknown class>, initialItems: [List](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin.collections/-list/index.html)<<Error class: unknown class>>)
Adapter for the main dashboard grid. Manages the lifecycle and data binding for [WidgetCardView](-widget-card-view/index) instances. |
+| [WidgetCardView](-widget-card-view/index) | [main]
class [WidgetCardView](-widget-card-view/index)(context: <Error class: unknown class>)
A highly optimized custom View that renders a single Home Assistant entity card. Part of the "Bauhaus Canvas" engine, it avoids XML overhead by manually drawing everything. Supports state-based coloring, pulsing animations for transitions, and haptic feedback. |
diff --git a/app/com.example.retroha/-base-activity/-base-activity.md b/app/com.example.retroha/-base-activity/-base-activity.md
new file mode 100644
index 0000000..54425ec
--- /dev/null
+++ b/app/com.example.retroha/-base-activity/-base-activity.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha](../index)/[BaseActivity](index)/[BaseActivity](-base-activity)
+
+# BaseActivity
+
+[main]\
+constructor()
diff --git a/app/com.example.retroha/-base-activity/attach-base-context.md b/app/com.example.retroha/-base-activity/attach-base-context.md
new file mode 100644
index 0000000..bbb5522
--- /dev/null
+++ b/app/com.example.retroha/-base-activity/attach-base-context.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha](../index)/[BaseActivity](index)/[attachBaseContext](attach-base-context)
+
+# attachBaseContext
+
+[main]\
+open fun [attachBaseContext](attach-base-context)(newBase: <Error class: unknown class>)
diff --git a/app/com.example.retroha/-base-activity/index.md b/app/com.example.retroha/-base-activity/index.md
new file mode 100644
index 0000000..53bf764
--- /dev/null
+++ b/app/com.example.retroha/-base-activity/index.md
@@ -0,0 +1,31 @@
+//[app](../../../index)/[com.example.retroha](../index)/[BaseActivity](index)
+
+# BaseActivity
+
+abstract class [BaseActivity](index)
+
+Base activity class that provides automatic localization support. All activities in the application should extend this class to ensure dynamic language changes are applied correctly.
+
+#### Inheritors
+
+| |
+|---|
+| [ConnectionSettingsActivity](../-connection-settings-activity/index) |
+| [EntitySelectionActivity](../-entity-selection-activity/index) |
+| [InstructionsActivity](../-instructions-activity/index) |
+| [LanguageActivity](../-language-activity/index) |
+| [MainActivity](../-main-activity/index) |
+| [SettingsActivity](../-settings-activity/index) |
+
+## Constructors
+
+| | |
+|---|---|
+| [BaseActivity](-base-activity) | [main]
constructor() |
+
+## Functions
+
+| Name | Summary |
+|---|---|
+| [attachBaseContext](attach-base-context) | [main]
open fun [attachBaseContext](attach-base-context)(newBase: <Error class: unknown class>) |
+| [onCreate](on-create) | [main]
open fun [onCreate](on-create)(savedInstanceState: <Error class: unknown class>?) |
diff --git a/app/com.example.retroha/-base-activity/on-create.md b/app/com.example.retroha/-base-activity/on-create.md
new file mode 100644
index 0000000..bf75e3d
--- /dev/null
+++ b/app/com.example.retroha/-base-activity/on-create.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha](../index)/[BaseActivity](index)/[onCreate](on-create)
+
+# onCreate
+
+[main]\
+open fun [onCreate](on-create)(savedInstanceState: <Error class: unknown class>?)
diff --git a/app/com.example.retroha/-connection-settings-activity/-connection-settings-activity.md b/app/com.example.retroha/-connection-settings-activity/-connection-settings-activity.md
new file mode 100644
index 0000000..33d49fb
--- /dev/null
+++ b/app/com.example.retroha/-connection-settings-activity/-connection-settings-activity.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha](../index)/[ConnectionSettingsActivity](index)/[ConnectionSettingsActivity](-connection-settings-activity)
+
+# ConnectionSettingsActivity
+
+[main]\
+constructor()
diff --git a/app/com.example.retroha/-connection-settings-activity/index.md b/app/com.example.retroha/-connection-settings-activity/index.md
new file mode 100644
index 0000000..69cbe93
--- /dev/null
+++ b/app/com.example.retroha/-connection-settings-activity/index.md
@@ -0,0 +1,21 @@
+//[app](../../../index)/[com.example.retroha](../index)/[ConnectionSettingsActivity](index)
+
+# ConnectionSettingsActivity
+
+[main]\
+class [ConnectionSettingsActivity](index) : [BaseActivity](../-base-activity/index)
+
+Activity for configuring the connection to the Home Assistant server. Handles server URL, authentication token, and refresh interval settings. Includes a validation step before saving.
+
+## Constructors
+
+| | |
+|---|---|
+| [ConnectionSettingsActivity](-connection-settings-activity) | [main]
constructor() |
+
+## Functions
+
+| Name | Summary |
+|---|---|
+| [attachBaseContext](../-base-activity/attach-base-context) | [main]
open fun [attachBaseContext](../-base-activity/attach-base-context)(newBase: <Error class: unknown class>) |
+| [onCreate](on-create) | [main]
open override fun [onCreate](on-create)(savedInstanceState: <Error class: unknown class>?) |
diff --git a/app/com.example.retroha/-connection-settings-activity/on-create.md b/app/com.example.retroha/-connection-settings-activity/on-create.md
new file mode 100644
index 0000000..0c6ce50
--- /dev/null
+++ b/app/com.example.retroha/-connection-settings-activity/on-create.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha](../index)/[ConnectionSettingsActivity](index)/[onCreate](on-create)
+
+# onCreate
+
+[main]\
+open override fun [onCreate](on-create)(savedInstanceState: <Error class: unknown class>?)
diff --git a/app/com.example.retroha/-entity-selection-activity/-entity-selection-activity.md b/app/com.example.retroha/-entity-selection-activity/-entity-selection-activity.md
new file mode 100644
index 0000000..2abce1d
--- /dev/null
+++ b/app/com.example.retroha/-entity-selection-activity/-entity-selection-activity.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha](../index)/[EntitySelectionActivity](index)/[EntitySelectionActivity](-entity-selection-activity)
+
+# EntitySelectionActivity
+
+[main]\
+constructor()
diff --git a/app/com.example.retroha/-entity-selection-activity/index.md b/app/com.example.retroha/-entity-selection-activity/index.md
new file mode 100644
index 0000000..7204662
--- /dev/null
+++ b/app/com.example.retroha/-entity-selection-activity/index.md
@@ -0,0 +1,21 @@
+//[app](../../../index)/[com.example.retroha](../index)/[EntitySelectionActivity](index)
+
+# EntitySelectionActivity
+
+[main]\
+class [EntitySelectionActivity](index) : [BaseActivity](../-base-activity/index)
+
+Activity for browsing and selecting Home Assistant entities to be displayed as widgets. Features real-time filtering and persistent selection storage.
+
+## Constructors
+
+| | |
+|---|---|
+| [EntitySelectionActivity](-entity-selection-activity) | [main]
constructor() |
+
+## Functions
+
+| Name | Summary |
+|---|---|
+| [attachBaseContext](../-base-activity/attach-base-context) | [main]
open fun [attachBaseContext](../-base-activity/attach-base-context)(newBase: <Error class: unknown class>) |
+| [onCreate](on-create) | [main]
open override fun [onCreate](on-create)(savedInstanceState: <Error class: unknown class>?) |
diff --git a/app/com.example.retroha/-entity-selection-activity/on-create.md b/app/com.example.retroha/-entity-selection-activity/on-create.md
new file mode 100644
index 0000000..a118ecc
--- /dev/null
+++ b/app/com.example.retroha/-entity-selection-activity/on-create.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha](../index)/[EntitySelectionActivity](index)/[onCreate](on-create)
+
+# onCreate
+
+[main]\
+open override fun [onCreate](on-create)(savedInstanceState: <Error class: unknown class>?)
diff --git a/app/com.example.retroha/-instructions-activity/-instructions-activity.md b/app/com.example.retroha/-instructions-activity/-instructions-activity.md
new file mode 100644
index 0000000..3926627
--- /dev/null
+++ b/app/com.example.retroha/-instructions-activity/-instructions-activity.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha](../index)/[InstructionsActivity](index)/[InstructionsActivity](-instructions-activity)
+
+# InstructionsActivity
+
+[main]\
+constructor()
diff --git a/app/com.example.retroha/-instructions-activity/index.md b/app/com.example.retroha/-instructions-activity/index.md
new file mode 100644
index 0000000..630a969
--- /dev/null
+++ b/app/com.example.retroha/-instructions-activity/index.md
@@ -0,0 +1,21 @@
+//[app](../../../index)/[com.example.retroha](../index)/[InstructionsActivity](index)
+
+# InstructionsActivity
+
+[main]\
+class [InstructionsActivity](index) : [BaseActivity](../-base-activity/index)
+
+Activity for displaying the user manual and basic operation instructions.
+
+## Constructors
+
+| | |
+|---|---|
+| [InstructionsActivity](-instructions-activity) | [main]
constructor() |
+
+## Functions
+
+| Name | Summary |
+|---|---|
+| [attachBaseContext](../-base-activity/attach-base-context) | [main]
open fun [attachBaseContext](../-base-activity/attach-base-context)(newBase: <Error class: unknown class>) |
+| [onCreate](on-create) | [main]
open override fun [onCreate](on-create)(savedInstanceState: <Error class: unknown class>?) |
diff --git a/app/com.example.retroha/-instructions-activity/on-create.md b/app/com.example.retroha/-instructions-activity/on-create.md
new file mode 100644
index 0000000..d218634
--- /dev/null
+++ b/app/com.example.retroha/-instructions-activity/on-create.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha](../index)/[InstructionsActivity](index)/[onCreate](on-create)
+
+# onCreate
+
+[main]\
+open override fun [onCreate](on-create)(savedInstanceState: <Error class: unknown class>?)
diff --git a/app/com.example.retroha/-language-activity/-language-activity.md b/app/com.example.retroha/-language-activity/-language-activity.md
new file mode 100644
index 0000000..be786bb
--- /dev/null
+++ b/app/com.example.retroha/-language-activity/-language-activity.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha](../index)/[LanguageActivity](index)/[LanguageActivity](-language-activity)
+
+# LanguageActivity
+
+[main]\
+constructor()
diff --git a/app/com.example.retroha/-language-activity/index.md b/app/com.example.retroha/-language-activity/index.md
new file mode 100644
index 0000000..cd4e4fa
--- /dev/null
+++ b/app/com.example.retroha/-language-activity/index.md
@@ -0,0 +1,21 @@
+//[app](../../../index)/[com.example.retroha](../index)/[LanguageActivity](index)
+
+# LanguageActivity
+
+[main]\
+class [LanguageActivity](index) : [BaseActivity](../-base-activity/index)
+
+Activity for selecting the application language. Serves as the initial entry point on first launch or when triggered from settings.
+
+## Constructors
+
+| | |
+|---|---|
+| [LanguageActivity](-language-activity) | [main]
constructor() |
+
+## Functions
+
+| Name | Summary |
+|---|---|
+| [attachBaseContext](../-base-activity/attach-base-context) | [main]
open fun [attachBaseContext](../-base-activity/attach-base-context)(newBase: <Error class: unknown class>) |
+| [onCreate](on-create) | [main]
open override fun [onCreate](on-create)(savedInstanceState: <Error class: unknown class>?) |
diff --git a/app/com.example.retroha/-language-activity/on-create.md b/app/com.example.retroha/-language-activity/on-create.md
new file mode 100644
index 0000000..25007c6
--- /dev/null
+++ b/app/com.example.retroha/-language-activity/on-create.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha](../index)/[LanguageActivity](index)/[onCreate](on-create)
+
+# onCreate
+
+[main]\
+open override fun [onCreate](on-create)(savedInstanceState: <Error class: unknown class>?)
diff --git a/app/com.example.retroha/-main-activity/-main-activity.md b/app/com.example.retroha/-main-activity/-main-activity.md
new file mode 100644
index 0000000..c895ed0
--- /dev/null
+++ b/app/com.example.retroha/-main-activity/-main-activity.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha](../index)/[MainActivity](index)/[MainActivity](-main-activity)
+
+# MainActivity
+
+[main]\
+constructor()
diff --git a/app/com.example.retroha/-main-activity/index.md b/app/com.example.retroha/-main-activity/index.md
new file mode 100644
index 0000000..5f01b89
--- /dev/null
+++ b/app/com.example.retroha/-main-activity/index.md
@@ -0,0 +1,25 @@
+//[app](../../../index)/[com.example.retroha](../index)/[MainActivity](index)
+
+# MainActivity
+
+[main]\
+class [MainActivity](index) : [BaseActivity](../-base-activity/index)
+
+The primary dashboard activity. Displays a responsive grid of Home Assistant widgets and handles real-time updates. Manages domain filtering via tabs and coordinates network requests with [HaClient](../../com.example.retroha.network/-ha-client/index).
+
+## Constructors
+
+| | |
+|---|---|
+| [MainActivity](-main-activity) | [main]
constructor() |
+
+## Functions
+
+| Name | Summary |
+|---|---|
+| [attachBaseContext](../-base-activity/attach-base-context) | [main]
open fun [attachBaseContext](../-base-activity/attach-base-context)(newBase: <Error class: unknown class>) |
+| [onCreate](on-create) | [main]
open override fun [onCreate](on-create)(savedInstanceState: <Error class: unknown class>?) |
+| [onDestroy](on-destroy) | [main]
open fun [onDestroy](on-destroy)() |
+| [onPause](on-pause) | [main]
open fun [onPause](on-pause)() |
+| [onResume](on-resume) | [main]
open fun [onResume](on-resume)() |
+| [onTrimMemory](on-trim-memory) | [main]
open fun [onTrimMemory](on-trim-memory)(level: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html)) |
diff --git a/app/com.example.retroha/-main-activity/on-create.md b/app/com.example.retroha/-main-activity/on-create.md
new file mode 100644
index 0000000..2aeaa42
--- /dev/null
+++ b/app/com.example.retroha/-main-activity/on-create.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha](../index)/[MainActivity](index)/[onCreate](on-create)
+
+# onCreate
+
+[main]\
+open override fun [onCreate](on-create)(savedInstanceState: <Error class: unknown class>?)
diff --git a/app/com.example.retroha/-main-activity/on-destroy.md b/app/com.example.retroha/-main-activity/on-destroy.md
new file mode 100644
index 0000000..f064a7b
--- /dev/null
+++ b/app/com.example.retroha/-main-activity/on-destroy.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha](../index)/[MainActivity](index)/[onDestroy](on-destroy)
+
+# onDestroy
+
+[main]\
+open fun [onDestroy](on-destroy)()
diff --git a/app/com.example.retroha/-main-activity/on-pause.md b/app/com.example.retroha/-main-activity/on-pause.md
new file mode 100644
index 0000000..7ff1774
--- /dev/null
+++ b/app/com.example.retroha/-main-activity/on-pause.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha](../index)/[MainActivity](index)/[onPause](on-pause)
+
+# onPause
+
+[main]\
+open fun [onPause](on-pause)()
diff --git a/app/com.example.retroha/-main-activity/on-resume.md b/app/com.example.retroha/-main-activity/on-resume.md
new file mode 100644
index 0000000..c32f82e
--- /dev/null
+++ b/app/com.example.retroha/-main-activity/on-resume.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha](../index)/[MainActivity](index)/[onResume](on-resume)
+
+# onResume
+
+[main]\
+open fun [onResume](on-resume)()
diff --git a/app/com.example.retroha/-main-activity/on-trim-memory.md b/app/com.example.retroha/-main-activity/on-trim-memory.md
new file mode 100644
index 0000000..f4629b0
--- /dev/null
+++ b/app/com.example.retroha/-main-activity/on-trim-memory.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha](../index)/[MainActivity](index)/[onTrimMemory](on-trim-memory)
+
+# onTrimMemory
+
+[main]\
+open fun [onTrimMemory](on-trim-memory)(level: [Int](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin-stdlib/kotlin/-int/index.html))
diff --git a/app/com.example.retroha/-settings-activity/-settings-activity.md b/app/com.example.retroha/-settings-activity/-settings-activity.md
new file mode 100644
index 0000000..25ce8e2
--- /dev/null
+++ b/app/com.example.retroha/-settings-activity/-settings-activity.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha](../index)/[SettingsActivity](index)/[SettingsActivity](-settings-activity)
+
+# SettingsActivity
+
+[main]\
+constructor()
diff --git a/app/com.example.retroha/-settings-activity/index.md b/app/com.example.retroha/-settings-activity/index.md
new file mode 100644
index 0000000..e6d3627
--- /dev/null
+++ b/app/com.example.retroha/-settings-activity/index.md
@@ -0,0 +1,21 @@
+//[app](../../../index)/[com.example.retroha](../index)/[SettingsActivity](index)
+
+# SettingsActivity
+
+[main]\
+class [SettingsActivity](index) : [BaseActivity](../-base-activity/index)
+
+Main settings menu activity. Provides navigation to connection configuration, entity selection, instructions, and language settings.
+
+## Constructors
+
+| | |
+|---|---|
+| [SettingsActivity](-settings-activity) | [main]
constructor() |
+
+## Functions
+
+| Name | Summary |
+|---|---|
+| [attachBaseContext](../-base-activity/attach-base-context) | [main]
open fun [attachBaseContext](../-base-activity/attach-base-context)(newBase: <Error class: unknown class>) |
+| [onCreate](on-create) | [main]
open override fun [onCreate](on-create)(savedInstanceState: <Error class: unknown class>?) |
diff --git a/app/com.example.retroha/-settings-activity/on-create.md b/app/com.example.retroha/-settings-activity/on-create.md
new file mode 100644
index 0000000..e2e9641
--- /dev/null
+++ b/app/com.example.retroha/-settings-activity/on-create.md
@@ -0,0 +1,6 @@
+//[app](../../../index)/[com.example.retroha](../index)/[SettingsActivity](index)/[onCreate](on-create)
+
+# onCreate
+
+[main]\
+open override fun [onCreate](on-create)(savedInstanceState: <Error class: unknown class>?)
diff --git a/app/com.example.retroha/index.md b/app/com.example.retroha/index.md
new file mode 100644
index 0000000..b394b85
--- /dev/null
+++ b/app/com.example.retroha/index.md
@@ -0,0 +1,15 @@
+//[app](../../index)/[com.example.retroha](index)
+
+# Package-level declarations
+
+## Types
+
+| Name | Summary |
+|---|---|
+| [BaseActivity](-base-activity/index) | [main]
abstract class [BaseActivity](-base-activity/index)
Base activity class that provides automatic localization support. All activities in the application should extend this class to ensure dynamic language changes are applied correctly. |
+| [ConnectionSettingsActivity](-connection-settings-activity/index) | [main]
class [ConnectionSettingsActivity](-connection-settings-activity/index) : [BaseActivity](-base-activity/index)
Activity for configuring the connection to the Home Assistant server. Handles server URL, authentication token, and refresh interval settings. Includes a validation step before saving. |
+| [EntitySelectionActivity](-entity-selection-activity/index) | [main]
class [EntitySelectionActivity](-entity-selection-activity/index) : [BaseActivity](-base-activity/index)
Activity for browsing and selecting Home Assistant entities to be displayed as widgets. Features real-time filtering and persistent selection storage. |
+| [InstructionsActivity](-instructions-activity/index) | [main]
class [InstructionsActivity](-instructions-activity/index) : [BaseActivity](-base-activity/index)
Activity for displaying the user manual and basic operation instructions. |
+| [LanguageActivity](-language-activity/index) | [main]
class [LanguageActivity](-language-activity/index) : [BaseActivity](-base-activity/index)
Activity for selecting the application language. Serves as the initial entry point on first launch or when triggered from settings. |
+| [MainActivity](-main-activity/index) | [main]
class [MainActivity](-main-activity/index) : [BaseActivity](-base-activity/index)
The primary dashboard activity. Displays a responsive grid of Home Assistant widgets and handles real-time updates. Manages domain filtering via tabs and coordinates network requests with [HaClient](../com.example.retroha.network/-ha-client/index). |
+| [SettingsActivity](-settings-activity/index) | [main]
class [SettingsActivity](-settings-activity/index) : [BaseActivity](-base-activity/index)
Main settings menu activity. Provides navigation to connection configuration, entity selection, instructions, and language settings. |
diff --git a/app/package-list b/app/package-list
new file mode 100644
index 0000000..38b6293
--- /dev/null
+++ b/app/package-list
@@ -0,0 +1,130 @@
+$dokka.format:gfm-v1
+$dokka.linkExtension:md
+$dokka.location:com.example.retroha.data////PointingToDeclaration/app/com.example.retroha.data/index.md
+$dokka.location:com.example.retroha.data/Prefs///PointingToDeclaration/app/com.example.retroha.data/-prefs/index.md
+$dokka.location:com.example.retroha.data/Prefs/getLanguage/#[Error type: Unresolved type for Context]/PointingToDeclaration/app/com.example.retroha.data/-prefs/get-language.md
+$dokka.location:com.example.retroha.data/Prefs/getRefreshInterval/#[Error type: Unresolved type for Context]/PointingToDeclaration/app/com.example.retroha.data/-prefs/get-refresh-interval.md
+$dokka.location:com.example.retroha.data/Prefs/getSelectedEntities/#[Error type: Unresolved type for Context]/PointingToDeclaration/app/com.example.retroha.data/-prefs/get-selected-entities.md
+$dokka.location:com.example.retroha.data/Prefs/getToken/#[Error type: Unresolved type for Context]/PointingToDeclaration/app/com.example.retroha.data/-prefs/get-token.md
+$dokka.location:com.example.retroha.data/Prefs/getUrl/#[Error type: Unresolved type for Context]/PointingToDeclaration/app/com.example.retroha.data/-prefs/get-url.md
+$dokka.location:com.example.retroha.data/Prefs/setLanguage/#[Error type: Unresolved type for Context]#kotlin.String/PointingToDeclaration/app/com.example.retroha.data/-prefs/set-language.md
+$dokka.location:com.example.retroha.data/Prefs/setRefreshInterval/#[Error type: Unresolved type for Context]#kotlin.Long/PointingToDeclaration/app/com.example.retroha.data/-prefs/set-refresh-interval.md
+$dokka.location:com.example.retroha.data/Prefs/setSelectedEntities/#[Error type: Unresolved type for Context]#kotlin.collections.Set[kotlin.String]/PointingToDeclaration/app/com.example.retroha.data/-prefs/set-selected-entities.md
+$dokka.location:com.example.retroha.data/Prefs/setToken/#[Error type: Unresolved type for Context]#kotlin.String/PointingToDeclaration/app/com.example.retroha.data/-prefs/set-token.md
+$dokka.location:com.example.retroha.data/Prefs/setUrl/#[Error type: Unresolved type for Context]#kotlin.String/PointingToDeclaration/app/com.example.retroha.data/-prefs/set-url.md
+$dokka.location:com.example.retroha.i18n////PointingToDeclaration/app/com.example.retroha.i18n/index.md
+$dokka.location:com.example.retroha.i18n/AndroidStrings///PointingToDeclaration/app/com.example.retroha.i18n/-android-strings/index.md
+$dokka.location:com.example.retroha.i18n/AndroidStrings/AndroidStrings/#[Error type: Unresolved type for Context]/PointingToDeclaration/app/com.example.retroha.i18n/-android-strings/-android-strings.md
+$dokka.location:com.example.retroha.i18n/AndroidStrings/get/#[Error type: Unresolved type for StringKey]/PointingToDeclaration/app/com.example.retroha.i18n/-android-strings/get.md
+$dokka.location:com.example.retroha.i18n/LocaleHelper///PointingToDeclaration/app/com.example.retroha.i18n/-locale-helper/index.md
+$dokka.location:com.example.retroha.i18n/LocaleHelper/setLocale/#[Error type: Unresolved type for Context]/PointingToDeclaration/app/com.example.retroha.i18n/-locale-helper/set-locale.md
+$dokka.location:com.example.retroha.network////PointingToDeclaration/app/com.example.retroha.network/index.md
+$dokka.location:com.example.retroha.network/BrightnessRequest///PointingToDeclaration/app/com.example.retroha.network/-brightness-request/index.md
+$dokka.location:com.example.retroha.network/BrightnessRequest/BrightnessRequest/#kotlin.String#kotlin.Int/PointingToDeclaration/app/com.example.retroha.network/-brightness-request/-brightness-request.md
+$dokka.location:com.example.retroha.network/BrightnessRequest/brightness/#/PointingToDeclaration/app/com.example.retroha.network/-brightness-request/brightness.md
+$dokka.location:com.example.retroha.network/BrightnessRequest/entity_id/#/PointingToDeclaration/app/com.example.retroha.network/-brightness-request/entity_id.md
+$dokka.location:com.example.retroha.network/HaApiService///PointingToDeclaration/app/com.example.retroha.network/-ha-api-service/index.md
+$dokka.location:com.example.retroha.network/HaApiService/getStates/#/PointingToDeclaration/app/com.example.retroha.network/-ha-api-service/get-states.md
+$dokka.location:com.example.retroha.network/HaApiService/setBrightness/#com.example.retroha.network.BrightnessRequest/PointingToDeclaration/app/com.example.retroha.network/-ha-api-service/set-brightness.md
+$dokka.location:com.example.retroha.network/HaApiService/toggle/#kotlin.String#com.example.retroha.network.ToggleRequest/PointingToDeclaration/app/com.example.retroha.network/-ha-api-service/toggle.md
+$dokka.location:com.example.retroha.network/HaAttributes///PointingToDeclaration/app/com.example.retroha.network/-ha-attributes/index.md
+$dokka.location:com.example.retroha.network/HaAttributes/HaAttributes/#kotlin.String?#kotlin.String?#kotlin.Int?/PointingToDeclaration/app/com.example.retroha.network/-ha-attributes/-ha-attributes.md
+$dokka.location:com.example.retroha.network/HaAttributes/brightness/#/PointingToDeclaration/app/com.example.retroha.network/-ha-attributes/brightness.md
+$dokka.location:com.example.retroha.network/HaAttributes/friendly_name/#/PointingToDeclaration/app/com.example.retroha.network/-ha-attributes/friendly_name.md
+$dokka.location:com.example.retroha.network/HaAttributes/unit_of_measurement/#/PointingToDeclaration/app/com.example.retroha.network/-ha-attributes/unit_of_measurement.md
+$dokka.location:com.example.retroha.network/HaClient///PointingToDeclaration/app/com.example.retroha.network/-ha-client/index.md
+$dokka.location:com.example.retroha.network/HaClient/clearCache/#/PointingToDeclaration/app/com.example.retroha.network/-ha-client/clear-cache.md
+$dokka.location:com.example.retroha.network/HaClient/getService/#[Error type: Unresolved type for Context]/PointingToDeclaration/app/com.example.retroha.network/-ha-client/get-service.md
+$dokka.location:com.example.retroha.network/HaClient/getServiceForTest/#kotlin.String#kotlin.String/PointingToDeclaration/app/com.example.retroha.network/-ha-client/get-service-for-test.md
+$dokka.location:com.example.retroha.network/HaState///PointingToDeclaration/app/com.example.retroha.network/-ha-state/index.md
+$dokka.location:com.example.retroha.network/HaState/HaState/#kotlin.String#kotlin.String#com.example.retroha.network.HaAttributes/PointingToDeclaration/app/com.example.retroha.network/-ha-state/-ha-state.md
+$dokka.location:com.example.retroha.network/HaState/attributes/#/PointingToDeclaration/app/com.example.retroha.network/-ha-state/attributes.md
+$dokka.location:com.example.retroha.network/HaState/entity_id/#/PointingToDeclaration/app/com.example.retroha.network/-ha-state/entity_id.md
+$dokka.location:com.example.retroha.network/HaState/state/#/PointingToDeclaration/app/com.example.retroha.network/-ha-state/state.md
+$dokka.location:com.example.retroha.network/HaStateAdapter///PointingToDeclaration/app/com.example.retroha.network/-ha-state-adapter/index.md
+$dokka.location:com.example.retroha.network/HaStateAdapter/HaStateAdapter/#/PointingToDeclaration/app/com.example.retroha.network/-ha-state-adapter/-ha-state-adapter.md
+$dokka.location:com.example.retroha.network/HaStateAdapter/read/#[Error type: Unresolved type for JsonReader]/PointingToDeclaration/app/com.example.retroha.network/-ha-state-adapter/read.md
+$dokka.location:com.example.retroha.network/HaStateAdapter/write/#[Error type: Unresolved type for JsonWriter]#com.example.retroha.network.HaState?/PointingToDeclaration/app/com.example.retroha.network/-ha-state-adapter/write.md
+$dokka.location:com.example.retroha.network/ToggleRequest///PointingToDeclaration/app/com.example.retroha.network/-toggle-request/index.md
+$dokka.location:com.example.retroha.network/ToggleRequest/ToggleRequest/#kotlin.String/PointingToDeclaration/app/com.example.retroha.network/-toggle-request/-toggle-request.md
+$dokka.location:com.example.retroha.network/ToggleRequest/entity_id/#/PointingToDeclaration/app/com.example.retroha.network/-toggle-request/entity_id.md
+$dokka.location:com.example.retroha.ui////PointingToDeclaration/app/com.example.retroha.ui/index.md
+$dokka.location:com.example.retroha.ui/BauhausCheckbox///PointingToDeclaration/app/com.example.retroha.ui/-bauhaus-checkbox/index.md
+$dokka.location:com.example.retroha.ui/BauhausCheckbox/BauhausCheckbox/#[Error type: Unresolved type for Context]/PointingToDeclaration/app/com.example.retroha.ui/-bauhaus-checkbox/-bauhaus-checkbox.md
+$dokka.location:com.example.retroha.ui/BauhausCheckbox/isChecked/#/PointingToDeclaration/app/com.example.retroha.ui/-bauhaus-checkbox/is-checked.md
+$dokka.location:com.example.retroha.ui/BauhausCheckbox/onDraw/#[Error type: Unresolved type for Canvas]/PointingToDeclaration/app/com.example.retroha.ui/-bauhaus-checkbox/on-draw.md
+$dokka.location:com.example.retroha.ui/BauhausCheckbox/onMeasure/#kotlin.Int#kotlin.Int/PointingToDeclaration/app/com.example.retroha.ui/-bauhaus-checkbox/on-measure.md
+$dokka.location:com.example.retroha.ui/EntitySelectionAdapter///PointingToDeclaration/app/com.example.retroha.ui/-entity-selection-adapter/index.md
+$dokka.location:com.example.retroha.ui/EntitySelectionAdapter/EntitySelectionAdapter/#[Error type: Unresolved type for Context]#kotlin.collections.List[com.example.retroha.network.HaState]#kotlin.collections.Set[kotlin.String]/PointingToDeclaration/app/com.example.retroha.ui/-entity-selection-adapter/-entity-selection-adapter.md
+$dokka.location:com.example.retroha.ui/EntitySelectionAdapter/getCount/#/PointingToDeclaration/app/com.example.retroha.ui/-entity-selection-adapter/get-count.md
+$dokka.location:com.example.retroha.ui/EntitySelectionAdapter/getItem/#kotlin.Int/PointingToDeclaration/app/com.example.retroha.ui/-entity-selection-adapter/get-item.md
+$dokka.location:com.example.retroha.ui/EntitySelectionAdapter/getItemId/#kotlin.Int/PointingToDeclaration/app/com.example.retroha.ui/-entity-selection-adapter/get-item-id.md
+$dokka.location:com.example.retroha.ui/EntitySelectionAdapter/getView/#kotlin.Int#[Error type: Unresolved type for View]?#[Error type: Unresolved type for ViewGroup]/PointingToDeclaration/app/com.example.retroha.ui/-entity-selection-adapter/get-view.md
+$dokka.location:com.example.retroha.ui/Fonts///PointingToDeclaration/app/com.example.retroha.ui/-fonts/index.md
+$dokka.location:com.example.retroha.ui/Fonts/BOLD/#/PointingToDeclaration/app/com.example.retroha.ui/-fonts/-b-o-l-d.md
+$dokka.location:com.example.retroha.ui/Fonts/REGULAR/#/PointingToDeclaration/app/com.example.retroha.ui/-fonts/-r-e-g-u-l-a-r.md
+$dokka.location:com.example.retroha.ui/HaIcons///PointingToDeclaration/app/com.example.retroha.ui/-ha-icons/index.md
+$dokka.location:com.example.retroha.ui/HaIcons/draw/#[Error type: Unresolved type for Canvas]#kotlin.String#kotlin.Float#kotlin.Float#kotlin.Float#kotlin.Int/PointingToDeclaration/app/com.example.retroha.ui/-ha-icons/draw.md
+$dokka.location:com.example.retroha.ui/LanguageIconDrawable///PointingToDeclaration/app/com.example.retroha.ui/-language-icon-drawable/index.md
+$dokka.location:com.example.retroha.ui/LanguageIconDrawable/LanguageIconDrawable/#kotlin.Int/PointingToDeclaration/app/com.example.retroha.ui/-language-icon-drawable/-language-icon-drawable.md
+$dokka.location:com.example.retroha.ui/LanguageIconDrawable/draw/#[Error type: Unresolved type for Canvas]/PointingToDeclaration/app/com.example.retroha.ui/-language-icon-drawable/draw.md
+$dokka.location:com.example.retroha.ui/LanguageIconDrawable/getIntrinsicHeight/#/PointingToDeclaration/app/com.example.retroha.ui/-language-icon-drawable/get-intrinsic-height.md
+$dokka.location:com.example.retroha.ui/LanguageIconDrawable/getIntrinsicWidth/#/PointingToDeclaration/app/com.example.retroha.ui/-language-icon-drawable/get-intrinsic-width.md
+$dokka.location:com.example.retroha.ui/LanguageIconDrawable/getOpacity/#/PointingToDeclaration/app/com.example.retroha.ui/-language-icon-drawable/get-opacity.md
+$dokka.location:com.example.retroha.ui/LanguageIconDrawable/setAlpha/#kotlin.Int/PointingToDeclaration/app/com.example.retroha.ui/-language-icon-drawable/set-alpha.md
+$dokka.location:com.example.retroha.ui/LanguageIconDrawable/setColorFilter/#[Error type: Unresolved type for ColorFilter]?/PointingToDeclaration/app/com.example.retroha.ui/-language-icon-drawable/set-color-filter.md
+$dokka.location:com.example.retroha.ui/LightControlDialog///PointingToDeclaration/app/com.example.retroha.ui/-light-control-dialog/index.md
+$dokka.location:com.example.retroha.ui/LightControlDialog/LightControlDialog/#[Error type: Unresolved type for Context]#kotlin.String#kotlin.Int#kotlin.Function1[kotlin.Int,kotlin.Unit]/PointingToDeclaration/app/com.example.retroha.ui/-light-control-dialog/-light-control-dialog.md
+$dokka.location:com.example.retroha.ui/LightControlDialog/onCreate/#[Error type: Unresolved type for Bundle]?/PointingToDeclaration/app/com.example.retroha.ui/-light-control-dialog/on-create.md
+$dokka.location:com.example.retroha.ui/WidgetAdapter///PointingToDeclaration/app/com.example.retroha.ui/-widget-adapter/index.md
+$dokka.location:com.example.retroha.ui/WidgetAdapter/WidgetAdapter/#[Error type: Unresolved type for Context]#kotlin.collections.List[[Error type: Unresolved type for WidgetConfig]]/PointingToDeclaration/app/com.example.retroha.ui/-widget-adapter/-widget-adapter.md
+$dokka.location:com.example.retroha.ui/WidgetAdapter/getCount/#/PointingToDeclaration/app/com.example.retroha.ui/-widget-adapter/get-count.md
+$dokka.location:com.example.retroha.ui/WidgetAdapter/getItem/#kotlin.Int/PointingToDeclaration/app/com.example.retroha.ui/-widget-adapter/get-item.md
+$dokka.location:com.example.retroha.ui/WidgetAdapter/getItemId/#kotlin.Int/PointingToDeclaration/app/com.example.retroha.ui/-widget-adapter/get-item-id.md
+$dokka.location:com.example.retroha.ui/WidgetAdapter/getView/#kotlin.Int#[Error type: Unresolved type for View]?#[Error type: Unresolved type for ViewGroup]/PointingToDeclaration/app/com.example.retroha.ui/-widget-adapter/get-view.md
+$dokka.location:com.example.retroha.ui/WidgetAdapter/hasStableIds/#/PointingToDeclaration/app/com.example.retroha.ui/-widget-adapter/has-stable-ids.md
+$dokka.location:com.example.retroha.ui/WidgetAdapter/onLongToggle/#/PointingToDeclaration/app/com.example.retroha.ui/-widget-adapter/on-long-toggle.md
+$dokka.location:com.example.retroha.ui/WidgetAdapter/onToggle/#/PointingToDeclaration/app/com.example.retroha.ui/-widget-adapter/on-toggle.md
+$dokka.location:com.example.retroha.ui/WidgetAdapter/updateItems/#kotlin.collections.List[[Error type: Unresolved type for WidgetConfig]]/PointingToDeclaration/app/com.example.retroha.ui/-widget-adapter/update-items.md
+$dokka.location:com.example.retroha.ui/WidgetCardView///PointingToDeclaration/app/com.example.retroha.ui/-widget-card-view/index.md
+$dokka.location:com.example.retroha.ui/WidgetCardView/WidgetCardView/#[Error type: Unresolved type for Context]/PointingToDeclaration/app/com.example.retroha.ui/-widget-card-view/-widget-card-view.md
+$dokka.location:com.example.retroha.ui/WidgetCardView/bind/#[Error type: Unresolved type for WidgetConfig]/PointingToDeclaration/app/com.example.retroha.ui/-widget-card-view/bind.md
+$dokka.location:com.example.retroha.ui/WidgetCardView/drawableStateChanged/#/PointingToDeclaration/app/com.example.retroha.ui/-widget-card-view/drawable-state-changed.md
+$dokka.location:com.example.retroha.ui/WidgetCardView/onDraw/#[Error type: Unresolved type for Canvas]/PointingToDeclaration/app/com.example.retroha.ui/-widget-card-view/on-draw.md
+$dokka.location:com.example.retroha.ui/WidgetCardView/onLongToggle/#/PointingToDeclaration/app/com.example.retroha.ui/-widget-card-view/on-long-toggle.md
+$dokka.location:com.example.retroha.ui/WidgetCardView/onMeasure/#kotlin.Int#kotlin.Int/PointingToDeclaration/app/com.example.retroha.ui/-widget-card-view/on-measure.md
+$dokka.location:com.example.retroha.ui/WidgetCardView/onSizeChanged/#kotlin.Int#kotlin.Int#kotlin.Int#kotlin.Int/PointingToDeclaration/app/com.example.retroha.ui/-widget-card-view/on-size-changed.md
+$dokka.location:com.example.retroha.ui/WidgetCardView/onToggle/#/PointingToDeclaration/app/com.example.retroha.ui/-widget-card-view/on-toggle.md
+$dokka.location:com.example.retroha////PointingToDeclaration/app/com.example.retroha/index.md
+$dokka.location:com.example.retroha/BaseActivity///PointingToDeclaration/app/com.example.retroha/-base-activity/index.md
+$dokka.location:com.example.retroha/BaseActivity/BaseActivity/#/PointingToDeclaration/app/com.example.retroha/-base-activity/-base-activity.md
+$dokka.location:com.example.retroha/BaseActivity/attachBaseContext/#[Error type: Unresolved type for Context]/PointingToDeclaration/app/com.example.retroha/-base-activity/attach-base-context.md
+$dokka.location:com.example.retroha/BaseActivity/onCreate/#[Error type: Unresolved type for Bundle]?/PointingToDeclaration/app/com.example.retroha/-base-activity/on-create.md
+$dokka.location:com.example.retroha/ConnectionSettingsActivity///PointingToDeclaration/app/com.example.retroha/-connection-settings-activity/index.md
+$dokka.location:com.example.retroha/ConnectionSettingsActivity/ConnectionSettingsActivity/#/PointingToDeclaration/app/com.example.retroha/-connection-settings-activity/-connection-settings-activity.md
+$dokka.location:com.example.retroha/ConnectionSettingsActivity/onCreate/#[Error type: Unresolved type for Bundle]?/PointingToDeclaration/app/com.example.retroha/-connection-settings-activity/on-create.md
+$dokka.location:com.example.retroha/EntitySelectionActivity///PointingToDeclaration/app/com.example.retroha/-entity-selection-activity/index.md
+$dokka.location:com.example.retroha/EntitySelectionActivity/EntitySelectionActivity/#/PointingToDeclaration/app/com.example.retroha/-entity-selection-activity/-entity-selection-activity.md
+$dokka.location:com.example.retroha/EntitySelectionActivity/onCreate/#[Error type: Unresolved type for Bundle]?/PointingToDeclaration/app/com.example.retroha/-entity-selection-activity/on-create.md
+$dokka.location:com.example.retroha/InstructionsActivity///PointingToDeclaration/app/com.example.retroha/-instructions-activity/index.md
+$dokka.location:com.example.retroha/InstructionsActivity/InstructionsActivity/#/PointingToDeclaration/app/com.example.retroha/-instructions-activity/-instructions-activity.md
+$dokka.location:com.example.retroha/InstructionsActivity/onCreate/#[Error type: Unresolved type for Bundle]?/PointingToDeclaration/app/com.example.retroha/-instructions-activity/on-create.md
+$dokka.location:com.example.retroha/LanguageActivity///PointingToDeclaration/app/com.example.retroha/-language-activity/index.md
+$dokka.location:com.example.retroha/LanguageActivity/LanguageActivity/#/PointingToDeclaration/app/com.example.retroha/-language-activity/-language-activity.md
+$dokka.location:com.example.retroha/LanguageActivity/onCreate/#[Error type: Unresolved type for Bundle]?/PointingToDeclaration/app/com.example.retroha/-language-activity/on-create.md
+$dokka.location:com.example.retroha/MainActivity///PointingToDeclaration/app/com.example.retroha/-main-activity/index.md
+$dokka.location:com.example.retroha/MainActivity/MainActivity/#/PointingToDeclaration/app/com.example.retroha/-main-activity/-main-activity.md
+$dokka.location:com.example.retroha/MainActivity/onCreate/#[Error type: Unresolved type for Bundle]?/PointingToDeclaration/app/com.example.retroha/-main-activity/on-create.md
+$dokka.location:com.example.retroha/MainActivity/onDestroy/#/PointingToDeclaration/app/com.example.retroha/-main-activity/on-destroy.md
+$dokka.location:com.example.retroha/MainActivity/onPause/#/PointingToDeclaration/app/com.example.retroha/-main-activity/on-pause.md
+$dokka.location:com.example.retroha/MainActivity/onResume/#/PointingToDeclaration/app/com.example.retroha/-main-activity/on-resume.md
+$dokka.location:com.example.retroha/MainActivity/onTrimMemory/#kotlin.Int/PointingToDeclaration/app/com.example.retroha/-main-activity/on-trim-memory.md
+$dokka.location:com.example.retroha/SettingsActivity///PointingToDeclaration/app/com.example.retroha/-settings-activity/index.md
+$dokka.location:com.example.retroha/SettingsActivity/SettingsActivity/#/PointingToDeclaration/app/com.example.retroha/-settings-activity/-settings-activity.md
+$dokka.location:com.example.retroha/SettingsActivity/onCreate/#[Error type: Unresolved type for Bundle]?/PointingToDeclaration/app/com.example.retroha/-settings-activity/on-create.md
+com.example.retroha
+com.example.retroha.data
+com.example.retroha.i18n
+com.example.retroha.network
+com.example.retroha.ui
+
diff --git a/index.md b/index.md
index 036f44d..9e98f33 100644
--- a/index.md
+++ b/index.md
@@ -1,11 +1,13 @@
-//[shared](index)
+//[app](index)
-# shared
+# app
## Packages
| Name |
|---|
-| [com.example.retroha.i18n](shared/com.example.retroha.i18n/index) |
-| [com.example.retroha.model](shared/com.example.retroha.model/index) |
-| [com.example.retroha.theme](shared/com.example.retroha.theme/index) |
+| [com.example.retroha](app/com.example.retroha/index) |
+| [com.example.retroha.data](app/com.example.retroha.data/index) |
+| [com.example.retroha.i18n](app/com.example.retroha.i18n/index) |
+| [com.example.retroha.network](app/com.example.retroha.network/index) |
+| [com.example.retroha.ui](app/com.example.retroha.ui/index) |