Skip to content

Commit b164396

Browse files
committed
Document the wiki and make English the primary language
1 parent 7c76c8d commit b164396

1 file changed

Lines changed: 118 additions & 90 deletions

File tree

‎README.md‎

Lines changed: 118 additions & 90 deletions
Original file line numberDiff line numberDiff line change
@@ -1,73 +1,87 @@
11
# Hass-Cleaner
22

3-
[Nederlands](#nederlands) · [English](#english)
3+
[English](#english) · [Nederlands](#nederlands) · [Wiki](https://github.com/dkwolf1/Hass-Cleaner/wiki) · [Releases](https://github.com/dkwolf1/Hass-Cleaner/releases)
44

5-
Hass-Cleaner is a Home Assistant App for inspecting storage, stale entities and registry relationships before anything is cleaned up. Safety, evidence and recovery come before reclaimed space.
5+
Hass-Cleaner is a Home Assistant App for inspecting storage, stale entities and registry relationships before anything is cleaned up. Safety, informed user choice and recovery come before reclaimed space.
66

7-
> **Release status:** version 1.0.1 is the current maintenance release for controlled early testing. Hass-Cleaner provides facts, advice, backup options and recovery guidance; the user makes the final cleanup decision.
7+
> **Release status:** version 1.0.1 is the current maintenance release for controlled early use. Hass-Cleaner provides facts, advice, backup options and recovery guidance; the user makes the final cleanup decision.
8+
9+
## English
810

911
> [!WARNING]
10-
> **Testversie — voorzichtig gebruiken / Test version — handle with care.** Hass-Cleaner kan bestanden, Home Assistant-registerobjecten en Recorder-gegevens wijzigen. Controleer iedere selectie en maak vooraf bij voorkeur een volledige Home Assistant-back-up. Test bij voorkeur eerst op een niet-kritische installatie. Gebruik is op eigen risico; quarantaine en herstelvoorzieningen verkleinen het risico, maar kunnen niet garanderen dat iedere integratie of gebruikersconfiguratie zonder gevolgen blijft werken.
11-
>
12-
> Hass-Cleaner can modify files, Home Assistant registry objects and Recorder data. Review every selection and preferably create a full Home Assistant backup first. Test on a non-critical installation where possible. Use is at your own risk; quarantine and recovery safeguards reduce risk, but cannot guarantee that every integration or user configuration remains unaffected.
12+
> **Test version — handle with care.** Hass-Cleaner can modify files, Home Assistant registry objects and Recorder data. Review every selection and preferably create a full Home Assistant backup first. Test on a non-critical installation where possible. Use is at your own risk; quarantine and recovery safeguards reduce risk, but cannot guarantee that every integration or user configuration remains unaffected.
1313
14-
## Nederlands
14+
### What is Hass-Cleaner?
1515

16-
### Wat is Hass-Cleaner?
16+
Hass-Cleaner helps Home Assistant users review accumulated data in a clear and controlled way. It can identify old logs, rebuildable cache files, persistently unavailable entities and inconsistent registry relationships.
1717

18-
Hass-Cleaner helpt Home Assistant-gebruikers om vervuiling begrijpelijk en gecontroleerd te beoordelen. De app zoekt onder andere naar oude logs, opnieuw op te bouwen cachebestanden, langdurig onbeschikbare entities en afwijkende registerrelaties.
18+
A finding is never treated as deletion evidence by itself. The App explains why it was found, its risk, possible consequences and the available recovery path.
1919

20-
Een gevonden item is nooit automatisch verwijderbewijs. De app toont waarom iets is gevonden, wat het risico is, wat er kan gebeuren en hoe herstel werkt.
20+
### Main features
2121

22-
### Belangrijkste functies
22+
- Safe storage scanning with one clear export dialog: a readable Markdown report, CSV for spreadsheet analysis and JSON for technical analysis.
23+
- Beginner-friendly cleanup categories and a clear **Prepare cleanup** action.
24+
- Entity filters for state, duration, integration, device and area.
25+
- Device and entity grouping by integration or device.
26+
- Scan differences for new, changed, recovered and disappeared signals.
27+
- Official Home Assistant Recorder purge with separate confirmation.
28+
- Quarantine for safe, personal and explicitly user-reviewed files; protected core files remain excluded.
29+
- User-directed removal of registered entities and supported device bundles through Home Assistant's official API.
30+
- Clearable local scan and completed-quarantine logs for a clean start.
31+
- Restore testing and recovery without overwriting existing files.
2332

24-
- Veilige opslagscan met één duidelijk exportvenster: een leesbaar Markdownrapport, CSV voor Excel en JSON voor technische analyse.
25-
- Begrijpelijke opruimcategorieën en de actie **Opschoning voorbereiden**.
26-
- Entities filteren op status, duur, integratie, apparaat en ruimte.
27-
- Apparaten en entities bundelen per integratie of apparaat.
28-
- Verschillen tussen scans: nieuw, gewijzigd, hersteld en verdwenen.
29-
- Officiële Home Assistant Recorder-purge met afzonderlijke bevestiging.
30-
- Quarantaine voor veilige, persoonlijke en door de gebruiker beoordeelde bestanden; beschermde kernbestanden blijven uitgesloten.
31-
- Gebruikersgestuurde verwijdering van geregistreerde entities en ondersteunde apparaatbundels via de officiële Home Assistant-API.
32-
- Wisbare lokale scan- en afgeronde quarantainelogboeken voor een schone start.
33-
- Hersteltest en terugplaatsen zonder bestaande bestanden te overschrijven.
33+
### 1.0.x safety model
3434

35-
### Veiligheidsmodel van 1.0.x
35+
A file can enter quarantine only when all conditions are satisfied:
3636

37-
Een bestand kan alleen naar quarantaine als aan alle voorwaarden wordt voldaan:
37+
1. It belongs to the latest completed scan.
38+
2. Its type, path, age, risk class and protected scopes still match the scan immediately before execution.
39+
3. Its size, modification time and SHA-256 still match the scan.
40+
4. The user explicitly chooses a Supervisor-verified backup, a manually checked recent backup or proceeding without a backup.
41+
5. Deviating from the recommended verified backup requires an additional risk acknowledgement.
42+
6. The user confirms the operation with `QUARANTAINE`.
3843

39-
1. Het bestand komt uit de laatste voltooide scan.
40-
2. Bestandstype, pad, leeftijd, risicoklasse en beschermde scopes komen nog overeen met de scan.
41-
3. Grootte, wijzigingstijd en SHA-256 komen overeen met de scan.
42-
4. De gebruiker kiest bewust voor een door Supervisor geverifieerde back-up, een zelf gecontroleerde recente back-up of doorgaan zonder back-up.
43-
5. Een afwijking van de aanbevolen geverifieerde back-up vereist een extra risicobevestiging.
44-
6. De gebruiker bevestigt de actie met `QUARANTAINE`.
44+
The complete selection is validated before the first file is moved. Quarantine records the original path, checksum, user, backup evidence and expiry time. Recovery requires `HERSTEL` and never overwrites an existing file.
4545

46-
De volledige selectie wordt gecontroleerd voordat het eerste bestand wordt verplaatst. Quarantaine bewaart oorsprong, checksum, gebruiker, back-upbewijs en vervaldatum. Herstel vereist `HERSTEL` en overschrijft nooit een bestaand bestand.
46+
Nothing is deleted automatically after the configured 1–10 day retention period. Permanent removal becomes available only after expiry, verifies the checksum again and requires `VERWIJDER`.
4747

48-
Na de ingestelde bewaartermijn van 1–10 dagen wordt niets automatisch gewist. Definitief verwijderen is pas daarna beschikbaar, voert opnieuw een checksumcontrole uit en vereist `VERWIJDER`.
48+
Personal or uncertain content requires an additional content acknowledgement. Registry cleanup requires displayed advice, a backup choice, risk acknowledgement and exact count confirmation. Runtime-only entities and protected core files remain technically excluded.
4949

50-
Persoonlijke of onzekere inhoud vereist een extra inhoudsbevestiging. Registeropschoning vereist adviesweergave, back-upkeuze, risicobevestiging en een exact aantal. Runtime-only entities en beschermde kernbestanden blijven technisch uitgesloten.
50+
### Documentation
5151

52-
### Talen
52+
The [Hass-Cleaner Wiki](https://github.com/dkwolf1/Hass-Cleaner/wiki) contains the user guide, including:
5353

54-
- Interface en Home Assistant App-instellingen: Automatisch, Nederlands en English.
55-
- Automatisch gebruikt de browser-/Home Assistant-weergavetaal en valt bij een niet-ondersteunde taal terug op Engels.
56-
- De taalkeuze binnen Hass-Cleaner heeft voorrang op de Home Assistant App-configuratie.
54+
- installation and updates;
55+
- the recommended first scan;
56+
- file classification and quarantine;
57+
- entity and bundle review;
58+
- Recorder cleanup and backups;
59+
- settings, reports and troubleshooting;
60+
- safety and recovery guidance;
61+
- a concise Dutch quick-start.
5762

58-
### Installeren vanuit GitHub
63+
For version-specific changes, see [CHANGELOG.md](hass_cleaner/CHANGELOG.md). For planned work and release criteria, see [ROADMAP.md](ROADMAP.md).
5964

60-
1. Open Home Assistant en ga naar **Instellingen → Apps → App store → Repositories**.
61-
2. Voeg `https://github.com/dkwolf1/Hass-Cleaner` toe.
62-
3. Installeer **Hass-Cleaner**.
63-
4. Start de app en open de webinterface.
64-
5. Voer eerst alleen een scan uit en beoordeel het rapport.
65+
### Languages
6566

66-
GitHub Actions bouwt versie 1.0.1 voor `amd64` en `aarch64`. Na publicatie van de container kan Home Assistant de release via deze repository installeren of bijwerken.
67+
- Project documentation and GitHub communication use English as the primary language and Dutch as the secondary language.
68+
- Interface and Home Assistant App settings support Automatic, English and Nederlands.
69+
- Automatic uses the browser or Home Assistant display language and falls back to English for unsupported languages.
70+
- The language selected inside Hass-Cleaner takes precedence over the Home Assistant App configuration.
6771

68-
### Lokaal ontwikkelen en testen
72+
### Install from GitHub
6973

70-
Voer deze opdrachten uit vanuit de map `hass_cleaner`:
74+
1. In Home Assistant, open **Settings → Apps → App store → Repositories**.
75+
2. Add `https://github.com/dkwolf1/Hass-Cleaner`.
76+
3. Install **Hass-Cleaner**.
77+
4. Start the App and open its web interface.
78+
5. Run a scan first and review the report before preparing an action.
79+
80+
GitHub Actions builds version 1.0.1 for `amd64` and `aarch64`. After the container is published, Home Assistant can install or update the release through this repository.
81+
82+
### Local development and tests
83+
84+
Run the following commands from the `hass_cleaner` directory:
7185

7286
```powershell
7387
$env:HASS_CLEANER_CONFIG_ROOT = "$PWD\..\dev-fixtures\homeassistant"
@@ -77,74 +91,90 @@ $env:HASS_CLEANER_PORT = "8099"
7791
python -m hass_cleaner
7892
```
7993

80-
Open vervolgens `http://127.0.0.1:8099`.
94+
Then open `http://127.0.0.1:8099`.
8195

8296
```powershell
8397
python -m unittest discover -s tests -v
8498
node --check web/assets/app.js
8599
```
86100

87-
Lees [ROADMAP.md](ROADMAP.md) voor de resterende releasecriteria.
88-
89101
---
90102

91-
## English
103+
## Nederlands
92104

93-
### What is Hass-Cleaner?
105+
> [!WARNING]
106+
> **Testversie — voorzichtig gebruiken.** Hass-Cleaner kan bestanden, Home Assistant-registerobjecten en Recorder-gegevens wijzigen. Controleer iedere selectie en maak vooraf bij voorkeur een volledige Home Assistant-back-up. Test waar mogelijk eerst op een niet-kritische installatie. Gebruik is op eigen risico; quarantaine en herstelvoorzieningen verkleinen het risico, maar kunnen niet garanderen dat iedere integratie of gebruikersconfiguratie zonder gevolgen blijft werken.
94107
95-
Hass-Cleaner helps Home Assistant users review accumulated data in a clear and controlled way. It can identify old logs, rebuildable cache files, persistently unavailable entities and inconsistent registry relationships.
108+
### Wat is Hass-Cleaner?
96109

97-
A finding is never treated as deletion evidence by itself. The App explains why it was found, its risk, possible consequences and the available recovery path.
110+
Hass-Cleaner helpt Home Assistant-gebruikers om verzamelde gegevens begrijpelijk en gecontroleerd te beoordelen. De App zoekt onder andere naar oude logs, opnieuw op te bouwen cachebestanden, langdurig onbeschikbare entities en afwijkende registerrelaties.
98111

99-
### Main features
112+
Een gevonden onderdeel is nooit automatisch verwijderbewijs. De App toont waarom iets is gevonden, wat het risico is, wat er kan gebeuren en hoe herstel werkt.
100113

101-
- Safe storage scanning with one clear export dialog: a readable Markdown report, CSV for Excel and JSON for technical analysis.
102-
- Beginner-friendly cleanup categories and a clear **Prepare cleanup** action.
103-
- Entity filters for state, duration, integration, device and area.
104-
- Device and entity grouping by integration or device.
105-
- Scan differences for new, changed, recovered and disappeared signals.
106-
- Official Home Assistant Recorder purge with separate confirmation.
107-
- Quarantine for safe, personal and explicitly user-reviewed files; protected core files remain excluded.
108-
- User-directed removal of registered entities and supported device bundles through Home Assistant's official API.
109-
- Clearable local scan and completed-quarantine logs for a clean start.
110-
- Restore testing and recovery without overwriting existing files.
114+
### Belangrijkste functies
111115

112-
### 1.0.x safety model
116+
- Veilige opslagscan met één duidelijk exportvenster: een leesbaar Markdownrapport, CSV voor spreadsheetanalyse en JSON voor technische analyse.
117+
- Begrijpelijke opruimcategorieën en de actie **Opschoning voorbereiden**.
118+
- Entities filteren op status, duur, integratie, apparaat en ruimte.
119+
- Apparaten en entities bundelen per integratie of apparaat.
120+
- Verschillen tussen scans: nieuw, gewijzigd, hersteld en verdwenen.
121+
- Officiële Home Assistant Recorder-purge met afzonderlijke bevestiging.
122+
- Quarantaine voor veilige, persoonlijke en door de gebruiker beoordeelde bestanden; beschermde kernbestanden blijven uitgesloten.
123+
- Gebruikersgestuurde verwijdering van geregistreerde entities en ondersteunde apparaatbundels via de officiële Home Assistant-API.
124+
- Wisbare lokale scan- en afgeronde quarantainelogboeken voor een schone start.
125+
- Hersteltest en terugplaatsen zonder bestaande bestanden te overschrijven.
113126

114-
A file can enter quarantine only when all conditions are satisfied:
127+
### Veiligheidsmodel van 1.0.x
115128

116-
1. It belongs to the latest completed scan.
117-
2. Its type, path, age, risk class and protected scopes still match the scan immediately before execution.
118-
3. Its size, modification time and SHA-256 still match the scan.
119-
4. The user explicitly chooses a Supervisor-verified backup, a manually checked recent backup or proceeding without a backup.
120-
5. Deviating from the recommended verified backup requires an additional risk acknowledgement.
121-
6. The user confirms the operation with `QUARANTAINE`.
129+
Een bestand kan alleen naar quarantaine als aan alle voorwaarden wordt voldaan:
122130

123-
The entire selection is validated before the first file is moved. Quarantine records the original path, checksum, user, backup evidence and expiry time. Recovery requires `HERSTEL` and never overwrites an existing file.
131+
1. Het bestand komt uit de laatste voltooide scan.
132+
2. Bestandstype, pad, leeftijd, risicoklasse en beschermde scopes komen vlak voor uitvoering nog overeen met de scan.
133+
3. Grootte, wijzigingstijd en SHA-256 komen overeen met de scan.
134+
4. De gebruiker kiest bewust voor een door Supervisor geverifieerde back-up, een zelf gecontroleerde recente back-up of doorgaan zonder back-up.
135+
5. Afwijken van de aanbevolen geverifieerde back-up vereist een extra risicobevestiging.
136+
6. De gebruiker bevestigt de actie met `QUARANTAINE`.
124137

125-
Nothing is deleted automatically after the configured 1–10 day retention period. Permanent removal becomes available only after expiry, verifies the checksum again and requires `VERWIJDER`.
138+
De volledige selectie wordt gecontroleerd voordat het eerste bestand wordt verplaatst. Quarantaine bewaart het oorspronkelijke pad, de checksum, de gebruiker, het back-upbewijs en de vervaldatum. Herstel vereist `HERSTEL` en overschrijft nooit een bestaand bestand.
126139

127-
Personal or uncertain content requires an additional content acknowledgement. Registry cleanup requires displayed advice, a backup choice, risk acknowledgement and exact count confirmation. Runtime-only entities and protected core files remain technically excluded.
140+
Na de ingestelde bewaartermijn van 1–10 dagen wordt niets automatisch gewist. Definitief verwijderen is pas daarna beschikbaar, voert opnieuw een checksumcontrole uit en vereist `VERWIJDER`.
128141

129-
### Languages
142+
Persoonlijke of onzekere inhoud vereist een extra inhoudsbevestiging. Registeropschoning vereist adviesweergave, back-upkeuze, risicobevestiging en een exact aantal. Runtime-only entities en beschermde kernbestanden blijven technisch uitgesloten.
130143

131-
- Interface and Home Assistant App settings: Automatic, Dutch and English.
132-
- Automatic uses the browser/Home Assistant display language and falls back to English for unsupported languages.
133-
- The language selected inside Hass-Cleaner takes precedence over the Home Assistant App configuration.
144+
### Documentatie
134145

135-
### Install from GitHub
146+
De [Hass-Cleaner Wiki](https://github.com/dkwolf1/Hass-Cleaner/wiki) bevat de uitgebreide Engelstalige handleiding en een korte Nederlandse snelstart. Onderwerpen zijn onder andere:
136147

137-
1. In Home Assistant, open **Settings → Apps → App store → Repositories**.
138-
2. Add `https://github.com/dkwolf1/Hass-Cleaner`.
139-
3. Install **Hass-Cleaner**.
140-
4. Start the App and open its web interface.
141-
5. Run a scan first and review the report before preparing an action.
148+
- installatie en updates;
149+
- de aanbevolen eerste scan;
150+
- bestandsclassificatie en quarantaine;
151+
- beoordeling van entities en bundels;
152+
- Recorder-opschoning en back-ups;
153+
- instellingen, rapporten en probleemoplossing;
154+
- veiligheid en herstel.
142155

143-
GitHub Actions builds version 1.0.1 for `amd64` and `aarch64`. After the container is published, Home Assistant can install or update the release through this repository.
156+
Versiegebonden wijzigingen staan in [CHANGELOG.md](hass_cleaner/CHANGELOG.md). Gepland werk en releasecriteria staan in [ROADMAP.md](ROADMAP.md).
144157

145-
### Local development and tests
158+
### Talen
146159

147-
Run the following from the `hass_cleaner` directory:
160+
- Projectdocumentatie en GitHub-communicatie gebruiken Engels als primaire taal en Nederlands als tweede taal.
161+
- De interface en Home Assistant App-instellingen ondersteunen Automatisch, English en Nederlands.
162+
- Automatisch gebruikt de browser- of Home Assistant-weergavetaal en valt bij een niet-ondersteunde taal terug op Engels.
163+
- De taalkeuze binnen Hass-Cleaner heeft voorrang op de Home Assistant App-configuratie.
164+
165+
### Installeren vanuit GitHub
166+
167+
1. Open in Home Assistant **Instellingen → Apps → App store → Repositories**.
168+
2. Voeg `https://github.com/dkwolf1/Hass-Cleaner` toe.
169+
3. Installeer **Hass-Cleaner**.
170+
4. Start de App en open de webinterface.
171+
5. Voer eerst een scan uit en beoordeel het rapport voordat je een actie voorbereidt.
172+
173+
GitHub Actions bouwt versie 1.0.1 voor `amd64` en `aarch64`. Na publicatie van de container kan Home Assistant de release via deze repository installeren of bijwerken.
174+
175+
### Lokaal ontwikkelen en testen
176+
177+
Voer de volgende opdrachten uit vanuit de map `hass_cleaner`:
148178

149179
```powershell
150180
$env:HASS_CLEANER_CONFIG_ROOT = "$PWD\..\dev-fixtures\homeassistant"
@@ -154,15 +184,13 @@ $env:HASS_CLEANER_PORT = "8099"
154184
python -m hass_cleaner
155185
```
156186

157-
Then open `http://127.0.0.1:8099`.
187+
Open daarna `http://127.0.0.1:8099`.
158188

159189
```powershell
160190
python -m unittest discover -s tests -v
161191
node --check web/assets/app.js
162192
```
163193

164-
See [ROADMAP.md](ROADMAP.md) for the remaining release gates.
165-
166194
## Repository layout
167195

168196
```text

0 commit comments

Comments
 (0)