docs(v1.8.1): comprehensive metadata & documentation update for F-Droid release

Complete overhaul of all metadata and documentation for v1.8.1:

F-Droid Critical:
- Fix broken umlauts in de-DE/10.txt changelog (für, hinzugefügt, aufgeräumt)
- Shorten de-DE/7.txt changelog for brevity
- Remove trailing newline from en-US/title.txt

Version & Accuracy:
- Update README badges (Android 7.0+) and footer (v1.8.1)
- Add widgets, sorting, parallel sync to highlights
- Fix APK names in workflows (removed "universal")
- Update cache action v3 → v4 in PR workflow
- Fix CONTRIBUTING.md filename references
- Update QUICKSTART guides (APK name, typo, Android version, docs links)

Feature Documentation:
- Update full_description.txt (both locales) - remove NEW/NEU labels, add v1.8.0+ features
- Major FEATURES.md update - add Views & Layout, Widgets sections, updated tech stack
- Add UPCOMING.md v1.7.0-1.8.1 as released sections
- Update DOCS.md roadmap references and dates to Feb 2026
- Create missing en-US changelogs 1.txt, 2.txt

Supplementary Fixes:
- Update BACKUP.md - add encryption docs, fix cross-references
- Add CHANGELOG.md reference links v1.2.1-v1.8.1 (15 missing)
- Fix DEBUG_APK.md duplicate header
- Rewrite fastlane/README.md with both locales and limits table
- Create SELF_SIGNED_SSL.de.md (full German translation)

Affects: 26 files across READMEs, docs/, fastlane/, workflows
This commit is contained in:
inventory69
2026-02-11 15:45:51 +01:00
parent bc3f137669
commit cf54f44377
26 changed files with 583 additions and 182 deletions

View File

@@ -61,11 +61,11 @@ jobs:
run: | run: |
mkdir -p apk-output mkdir -p apk-output
# Standard Flavor - Universal APK # Standard Flavor
cp android/app/build/outputs/apk/standard/release/app-standard-release.apk \ cp android/app/build/outputs/apk/standard/release/app-standard-release.apk \
apk-output/simple-notes-sync-v${{ env.VERSION_NAME }}-standard.apk apk-output/simple-notes-sync-v${{ env.VERSION_NAME }}-standard.apk
# F-Droid Flavor - Universal APK # F-Droid Flavor
cp android/app/build/outputs/apk/fdroid/release/app-fdroid-release.apk \ cp android/app/build/outputs/apk/fdroid/release/app-fdroid-release.apk \
apk-output/simple-notes-sync-v${{ env.VERSION_NAME }}-fdroid.apk apk-output/simple-notes-sync-v${{ env.VERSION_NAME }}-fdroid.apk

View File

@@ -18,7 +18,7 @@ jobs:
distribution: 'temurin' distribution: 'temurin'
java-version: '17' java-version: '17'
- name: Gradle Cache - name: Gradle Cache
uses: actions/cache@v3 uses: actions/cache@v4
with: with:
path: | path: |
~/.gradle/caches ~/.gradle/caches
@@ -69,14 +69,14 @@ jobs:
continue-on-error: true continue-on-error: true
- name: Build-Ergebnis pruefen - name: Build-Ergebnis pruefen
run: | run: |
if [ -f "android/app/build/outputs/apk/standard/debug/app-standard-universal-debug.apk" ]; then if [ -f "android/app/build/outputs/apk/standard/debug/app-standard-debug.apk" ]; then
echo "✅ Standard Debug APK erfolgreich gebaut" echo "✅ Standard Debug APK erfolgreich gebaut"
ls -lh android/app/build/outputs/apk/standard/debug/*.apk ls -lh android/app/build/outputs/apk/standard/debug/*.apk
else else
echo "❌ Standard Debug APK Build fehlgeschlagen" echo "❌ Standard Debug APK Build fehlgeschlagen"
exit 1 exit 1
fi fi
if [ -f "android/app/build/outputs/apk/fdroid/debug/app-fdroid-universal-debug.apk" ]; then if [ -f "android/app/build/outputs/apk/fdroid/debug/app-fdroid-debug.apk" ]; then
echo "✅ F-Droid Debug APK erfolgreich gebaut" echo "✅ F-Droid Debug APK erfolgreich gebaut"
ls -lh android/app/build/outputs/apk/fdroid/debug/*.apk ls -lh android/app/build/outputs/apk/fdroid/debug/*.apk
else else

View File

@@ -968,6 +968,21 @@ Das komplette UI wurde von XML-Views auf Jetpack Compose migriert. Die App ist j
--- ---
[1.8.1]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.8.1
[1.8.0]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.8.0
[1.7.2]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.7.2
[1.7.1]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.7.1
[1.7.0]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.7.0
[1.6.1]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.6.1
[1.6.0]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.6.0
[1.5.0]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.5.0
[1.4.1]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.4.1
[1.4.0]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.4.0
[1.3.2]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.3.2
[1.3.1]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.3.1
[1.3.0]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.3.0
[1.2.2]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.2.2
[1.2.1]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.2.1
[1.2.0]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.2.0 [1.2.0]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.2.0
[1.1.2]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.1.2 [1.1.2]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.1.2
[1.1.1]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.1.1 [1.1.1]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.1.1

View File

@@ -967,6 +967,21 @@ The complete UI has been migrated from XML Views to Jetpack Compose. The app is
--- ---
[1.8.1]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.8.1
[1.8.0]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.8.0
[1.7.2]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.7.2
[1.7.1]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.7.1
[1.7.0]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.7.0
[1.6.1]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.6.1
[1.6.0]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.6.0
[1.5.0]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.5.0
[1.4.1]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.4.1
[1.4.0]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.4.0
[1.3.2]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.3.2
[1.3.1]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.3.1
[1.3.0]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.3.0
[1.2.2]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.2.2
[1.2.1]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.2.1
[1.2.0]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.2.0 [1.2.0]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.2.0
[1.1.2]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.1.2 [1.1.2]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.1.2
[1.1.1]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.1.1 [1.1.1]: https://github.com/inventory69/simple-notes-sync/releases/tag/v1.1.1

View File

@@ -94,10 +94,10 @@ Nutze die [Feature Request Template](https://github.com/inventory69/simple-notes
Dokumentations-Verbesserungen sind auch Contributions! Dokumentations-Verbesserungen sind auch Contributions!
**Dateien:** **Dateien:**
- `README.md` / `README.en.md` - Übersicht - `README.de.md` / `README.md` - Übersicht
- `QUICKSTART.md` / `QUICKSTART.en.md` - Schritt-für-Schritt Anleitung - `QUICKSTART.de.md` / `QUICKSTART.md` - Schritt-für-Schritt Anleitung
- `DOCS.md` / `DOCS.en.md` - Technische Details - `docs/DOCS.de.md` / `docs/DOCS.md` - Technische Details
- `server/README.md` / `server/README.en.md` - Server Setup - `server/README.de.md` / `server/README.md` - Server Setup
**Bitte:** Halte beide Sprachen (DE/EN) synchron! **Bitte:** Halte beide Sprachen (DE/EN) synchron!
@@ -219,10 +219,10 @@ Use the [Feature Request Template](https://github.com/inventory69/simple-notes-s
Documentation improvements are also contributions! Documentation improvements are also contributions!
**Files:** **Files:**
- `README.md` / `README.en.md` - Overview - `README.de.md` / `README.md` - Overview
- `QUICKSTART.md` / `QUICKSTART.en.md` - Step-by-step guide - `QUICKSTART.de.md` / `QUICKSTART.md` - Step-by-step guide
- `DOCS.md` / `DOCS.en.md` - Technical details - `docs/DOCS.de.md` / `docs/DOCS.md` - Technical details
- `server/README.md` / `server/README.en.md` - Server setup - `server/README.de.md` / `server/README.md` - Server setup
**Please:** Keep both languages (DE/EN) in sync! **Please:** Keep both languages (DE/EN) in sync!
@@ -260,4 +260,4 @@ By contributing, you agree that your code will be published under the [MIT Licen
Öffne ein [Issue](https://github.com/inventory69/simple-notes-sync/issues) oder nutze die [Question Template](https://github.com/inventory69/simple-notes-sync/issues/new/choose). Öffne ein [Issue](https://github.com/inventory69/simple-notes-sync/issues) oder nutze die [Question Template](https://github.com/inventory69/simple-notes-sync/issues/new/choose).
**Frohe Weihnachten & Happy Coding! 🎄** **Happy Coding! 🚀**

View File

@@ -8,7 +8,7 @@
## Voraussetzungen ## Voraussetzungen
- ✅ Android 8.0+ Smartphone/Tablet - ✅ Android 7.0+ Smartphone/Tablet
- ✅ WLAN-Verbindung - ✅ WLAN-Verbindung
- ✅ Eigener Server mit Docker (optional - für Self-Hosting) - ✅ Eigener Server mit Docker (optional - für Self-Hosting)
@@ -52,7 +52,7 @@ ip addr show | grep "inet " | grep -v 127.0.0.1
### Schritt 2: App installieren ### Schritt 2: App installieren
1. **APK herunterladen:** [Neueste Version](https://github.com/inventory69/simple-notes-sync/releases/latest) 1. **APK herunterladen:** [Neueste Version](https://github.com/inventory69/simple-notes-sync/releases/latest)
- Wähle: `simple-notes-sync-vX.X.X-standard-universal.apk` - Wähle: `simple-notes-sync-vX.X.X-standard.apk`
2. **Installation erlauben:** 2. **Installation erlauben:**
- Android: Einstellungen → Sicherheit → "Unbekannte Quellen" für deinen Browser aktivieren - Android: Einstellungen → Sicherheit → "Unbekannte Quellen" für deinen Browser aktivieren
@@ -261,7 +261,7 @@ Für zuverlässigen Auto-Sync:
## 🆘 Weitere Hilfe ## 🆘 Weitere Hilfe
- **GitHub Issues:** [Problem melden](https://github.com/inventory69/simple-notes-sync/issues) - **GitHub Issues:** [Problem melden](https://github.com/inventory69/simple-notes-sync/issues)
- **Vollständige Docs:** [DOCS.md](DOCS.md) - **Vollständige Docs:** [DOCS.md](docs/DOCS.md)
- **Server Setup Details:** [server/README.md](server/README.md) - **Server Setup Details:** [server/README.md](server/README.md)
--- ---

View File

@@ -8,7 +8,7 @@
## Prerequisites ## Prerequisites
- ✅ Android 8.0+ smartphone/tablet - ✅ Android 7.0+ smartphone/tablet
- ✅ WiFi connection - ✅ WiFi connection
- ✅ Own server with Docker (optional - for self-hosting) - ✅ Own server with Docker (optional - for self-hosting)
@@ -52,7 +52,7 @@ ip addr show | grep "inet " | grep -v 127.0.0.1
### Step 2: Install App ### Step 2: Install App
1. **Download APK:** [Latest version](https://github.com/inventory69/simple-notes-sync/releases/latest) 1. **Download APK:** [Latest version](https://github.com/inventory69/simple-notes-sync/releases/latest)
- Choose: `simple-notes-sync-vX.X.X-standard-universal.apk` - Choose: `simple-notes-sync-vX.X.X-standard.apk`
2. **Allow installation:** 2. **Allow installation:**
- Android: Settings → Security → Enable "Unknown sources" for your browser - Android: Settings → Security → Enable "Unknown sources" for your browser
@@ -77,7 +77,7 @@ ip addr show | grep "inet " | grep -v 127.0.0.1
> **💡 Note:** Enter only the base URL (without `/notes`). The app automatically creates `/notes/` for JSON files and `/notes-md/` for Markdown export. > **💡 Note:** Enter only the base URL (without `/notes`). The app automatically creates `/notes/` for JSON files and `/notes-md/` for Markdown export.
4. **Press "Test connection"**** 4. **Press "Test connection"**
- ✅ Success? → Continue to step 4 - ✅ Success? → Continue to step 4
- ❌ Error? → See [Troubleshooting](#troubleshooting) - ❌ Error? → See [Troubleshooting](#troubleshooting)
@@ -261,8 +261,8 @@ For reliable auto-sync:
## 🆘 Further Help ## 🆘 Further Help
- **GitHub Issues:** [Report problem](https://github.com/inventory69/simple-notes-sync/issues) - **GitHub Issues:** [Report problem](https://github.com/inventory69/simple-notes-sync/issues)
- **Complete docs:** [DOCS.en.md](DOCS.en.md) - **Complete docs:** [DOCS.md](docs/DOCS.md)
- **Server setup details:** [server/README.en.md](server/README.en.md) - **Server setup details:** [server/README.md](server/README.md)
--- ---

View File

@@ -8,7 +8,7 @@
<div align="center"> <div align="center">
[![Android](https://img.shields.io/badge/Android-8.0%2B-3DDC84?style=for-the-badge&logo=android&logoColor=white)](https://www.android.com/) [![Android](https://img.shields.io/badge/Android-7.0%2B-3DDC84?style=for-the-badge&logo=android&logoColor=white)](https://www.android.com/)
[![Kotlin](https://img.shields.io/badge/Kotlin-7F52FF?style=for-the-badge&logo=kotlin&logoColor=white)](https://kotlinlang.org/) [![Kotlin](https://img.shields.io/badge/Kotlin-7F52FF?style=for-the-badge&logo=kotlin&logoColor=white)](https://kotlinlang.org/)
[![Jetpack Compose](https://img.shields.io/badge/Jetpack%20Compose-4285F4?style=for-the-badge&logo=jetpackcompose&logoColor=white)](https://developer.android.com/compose/) [![Jetpack Compose](https://img.shields.io/badge/Jetpack%20Compose-4285F4?style=for-the-badge&logo=jetpackcompose&logoColor=white)](https://developer.android.com/compose/)
[![Material 3](https://img.shields.io/badge/Material_3-6750A4?style=for-the-badge&logo=material-design&logoColor=white)](https://m3.material.io/) [![Material 3](https://img.shields.io/badge/Material_3-6750A4?style=for-the-badge&logo=material-design&logoColor=white)](https://m3.material.io/)
@@ -66,12 +66,14 @@ alt="Get it on F-Droid" align="center" height="80" /></a>
- 📝 **Offline-first** Funktioniert ohne Internet - 📝 **Offline-first** Funktioniert ohne Internet
- 📊 **Flexible Ansichten** Listen- und Grid-Layout - 📊 **Flexible Ansichten** Listen- und Grid-Layout
-**Checklisten** Tap-to-Check, Drag & Drop -**Checklisten** Tap-to-Check, Drag & Drop
- 🌍 **Mehrsprachig** Deutsch/Englisch mit Sprachauswahl
- 🔄 **Konfigurierbare Sync-Trigger** onSave, onResume, WiFi, periodisch (15/30/60 Min), Boot - 🔄 **Konfigurierbare Sync-Trigger** onSave, onResume, WiFi, periodisch (15/30/60 Min), Boot
- 📌 **Widgets** Home-Screen Quick-Note und Notizlisten-Widget
- 🔀 **Smartes Sortieren** Nach Titel, Änderungsdatum, Erstelldatum, Farbe
-**Paralleler Sync** Lädt bis zu 5 Notizen gleichzeitig herunter
- 🌍 **Mehrsprachig** Deutsch/Englisch mit Sprachauswahl
- 🔒 **Self-hosted** Deine Daten bleiben bei dir (WebDAV) - 🔒 **Self-hosted** Deine Daten bleiben bei dir (WebDAV)
- 💾 **Lokales Backup** Export/Import als JSON-Datei (optional verschlüsselt) - 💾 **Lokales Backup** Export/Import als JSON-Datei (optional verschlüsselt)
- 🖥️ **Desktop-Integration** Markdown-Export für Obsidian, VS Code, Typora - 🖥️ **Desktop-Integration** Markdown-Export für Obsidian, VS Code, Typora
- 🔋 **Akkuschonend** ~0.2% mit Defaults, bis zu ~1.0% mit Periodic Sync
- 🎨 **Material Design 3** Dynamischer Dark/Light Mode & Farben - 🎨 **Material Design 3** Dynamischer Dark/Light Mode & Farben
➡️ **Vollständige Feature-Liste:** [docs/FEATURES.de.md](docs/FEATURES.de.md) ➡️ **Vollständige Feature-Liste:** [docs/FEATURES.de.md](docs/FEATURES.de.md)
@@ -138,6 +140,6 @@ MIT License siehe [LICENSE](LICENSE)
<div align="center"> <div align="center">
<br /><br /> <br /><br />
**v1.7.0** · Built with ❤️ using Kotlin + Jetpack Compose + Material Design 3 **v1.8.1** · Built with ❤️ using Kotlin + Jetpack Compose + Material Design 3
</div> </div>

View File

@@ -8,7 +8,7 @@
<div align="center"> <div align="center">
[![Android](https://img.shields.io/badge/Android-8.0%2B-3DDC84?style=for-the-badge&logo=android&logoColor=white)](https://www.android.com/) [![Android](https://img.shields.io/badge/Android-7.0%2B-3DDC84?style=for-the-badge&logo=android&logoColor=white)](https://www.android.com/)
[![Kotlin](https://img.shields.io/badge/Kotlin-7F52FF?style=for-the-badge&logo=kotlin&logoColor=white)](https://kotlinlang.org/) [![Kotlin](https://img.shields.io/badge/Kotlin-7F52FF?style=for-the-badge&logo=kotlin&logoColor=white)](https://kotlinlang.org/)
[![Jetpack Compose](https://img.shields.io/badge/Jetpack%20Compose-4285F4?style=for-the-badge&logo=jetpackcompose&logoColor=white)](https://developer.android.com/compose/) [![Jetpack Compose](https://img.shields.io/badge/Jetpack%20Compose-4285F4?style=for-the-badge&logo=jetpackcompose&logoColor=white)](https://developer.android.com/compose/)
[![Material 3](https://img.shields.io/badge/Material_3-6750A4?style=for-the-badge&logo=material-design&logoColor=white)](https://m3.material.io/) [![Material 3](https://img.shields.io/badge/Material_3-6750A4?style=for-the-badge&logo=material-design&logoColor=white)](https://m3.material.io/)
@@ -66,12 +66,14 @@ alt="Get it on F-Droid" align="center" height="80" /></a>
- 📝 **Offline-first** - Works without internet - 📝 **Offline-first** - Works without internet
- 📊 **Flexible views** - Switch between list and grid layout - 📊 **Flexible views** - Switch between list and grid layout
-**Checklists** - Tap-to-check, drag & drop -**Checklists** - Tap-to-check, drag & drop
- 🌍 **Multilingual** - English/German with language selector
- 🔄 **Configurable sync triggers** - onSave, onResume, WiFi-connect, periodic (15/30/60 min), boot - 🔄 **Configurable sync triggers** - onSave, onResume, WiFi-connect, periodic (15/30/60 min), boot
- 📌 **Widgets** - Home screen quick-note and note list widgets
- 🔀 **Smart sorting** - By title, date modified, date created, color
-**Parallel sync** - Downloads up to 5 notes simultaneously
- 🌍 **Multilingual** - English/German with language selector
- 🔒 **Self-hosted** - Your data stays with you (WebDAV) - 🔒 **Self-hosted** - Your data stays with you (WebDAV)
- 💾 **Local backup** - Export/Import as JSON file (encryption available) - 💾 **Local backup** - Export/Import as JSON file (encryption available)
- 🖥️ **Desktop integration** - Markdown export for Obsidian, VS Code, Typora - 🖥️ **Desktop integration** - Markdown export for Obsidian, VS Code, Typora
- 🔋 **Battery-friendly** - ~0.2% with defaults, up to ~1.0% with periodic sync
- 🎨 **Material Design 3** - Dynamic dark/light mode & colors based on system settings - 🎨 **Material Design 3** - Dynamic dark/light mode & colors based on system settings
➡️ **Complete feature list:** [FEATURES.md](docs/FEATURES.md) ➡️ **Complete feature list:** [FEATURES.md](docs/FEATURES.md)
@@ -148,6 +150,6 @@ MIT License - see [LICENSE](LICENSE)
<div align="center"> <div align="center">
<br /><br /> <br /><br />
**v1.7.0** · Built with ❤️ using Kotlin + Jetpack Compose + Material Design 3 **v1.8.1** · Built with ❤️ using Kotlin + Jetpack Compose + Material Design 3
</div> </div>

View File

@@ -276,8 +276,9 @@ Schritt-für-Schritt:
### Daten-Schutz ### Daten-Schutz
-**Lokal gespeichert** - Kein Cloud-Upload ohne deine Aktion -**Lokal gespeichert** - Kein Cloud-Upload ohne deine Aktion
-**Keine Verschlüsselung** - Klartextformat für Lesbarkeit -**Optionale Verschlüsselung** _(v1.7.0+)_ - Backup-Dateien mit Passwort schützen
- ⚠️ **Sensible Daten?** - Backup-Datei selbst verschlüsseln (z.B. 7-Zip mit Passwort) - **Menschenlesbar** - Klartextformat (JSON) wenn unverschlüsselt
- ⚠️ **Sensible Daten?** - Verschlüsselung aktivieren oder externe Tools nutzen (z.B. 7-Zip)
### Empfehlungen ### Empfehlungen
- 🔐 Backup-Dateien in verschlüsseltem Container speichern - 🔐 Backup-Dateien in verschlüsseltem Container speichern
@@ -321,4 +322,4 @@ Schritt-für-Schritt:
- [FEATURES.md](FEATURES.md) - Vollständige Feature-Liste - [FEATURES.md](FEATURES.md) - Vollständige Feature-Liste
- [DESKTOP.md](DESKTOP.md) - Desktop-Integration mit Markdown - [DESKTOP.md](DESKTOP.md) - Desktop-Integration mit Markdown
**Letzte Aktualisierung:** v1.2.1 (2026-01-05) **Letzte Aktualisierung:** v1.8.1 (2026-02-11)

View File

@@ -276,8 +276,9 @@ Step-by-step:
### Data Protection ### Data Protection
-**Locally stored** - No cloud upload without your action -**Locally stored** - No cloud upload without your action
-**No encryption** - Plain text format for readability -**Optional encryption** _(v1.7.0+)_ - Password-protect backup files
- ⚠️ **Sensitive data?** - Encrypt backup file yourself (e.g., 7-Zip with password) - **Human-readable** - Plain JSON format when unencrypted
- ⚠️ **Sensitive data?** - Enable encryption or use external tools (e.g., 7-Zip)
### Recommendations ### Recommendations
- 🔐 Store backup files in encrypted container - 🔐 Store backup files in encrypted container
@@ -317,8 +318,8 @@ Step-by-step:
--- ---
**📚 See also:** **📚 See also:**
- [QUICKSTART.en.md](../QUICKSTART.en.md) - App installation and setup - [QUICKSTART.md](../QUICKSTART.md) - App installation and setup
- [FEATURES.en.md](FEATURES.en.md) - Complete feature list - [FEATURES.md](FEATURES.md) - Complete feature list
- [DESKTOP.en.md](DESKTOP.en.md) - Desktop integration with Markdown - [DESKTOP.md](DESKTOP.md) - Desktop integration with Markdown
**Last update:** v1.2.1 (2026-01-05) **Last update:** v1.8.1 (2026-02-11)

View File

@@ -48,8 +48,6 @@ git push origin fix/my-bug
## 📱 Installation auf Gerät ## 📱 Installation auf Gerät
## 📱 Installation auf Gerät
### Mit ADB (Empfohlen - sauberes Testing) ### Mit ADB (Empfohlen - sauberes Testing)
```bash ```bash
# Gerät verbinden # Gerät verbinden

View File

@@ -541,17 +541,7 @@ androidx.localbroadcastmanager:localbroadcastmanager:1.1.0
## 🔮 Roadmap ## 🔮 Roadmap
### v1.1 Siehe [UPCOMING.md](UPCOMING.md) für die vollständige Roadmap und geplante Features.
- [ ] Suche & Filter
- [ ] Dark Mode
- [ ] Tags/Kategorien
- [ ] Markdown Preview
### v2.0
- [ ] Desktop Client (Flutter)
- [ ] End-to-End Verschlüsselung
- [ ] Shared Notes (Collaboration)
- [ ] Attachment Support
--- ---
@@ -564,4 +554,4 @@ androidx.localbroadcastmanager:localbroadcastmanager:1.1.0
--- ---
**Letzte Aktualisierung:** 25. Dezember 2025 **Letzte Aktualisierung:** Februar 2026

View File

@@ -541,17 +541,7 @@ androidx.localbroadcastmanager:localbroadcastmanager:1.1.0
## 🔮 Roadmap ## 🔮 Roadmap
### v1.1 See [UPCOMING.md](UPCOMING.md) for the full roadmap and planned features.
- [ ] Search & Filter
- [ ] Dark Mode
- [ ] Tags/Categories
- [ ] Markdown Preview
### v2.0
- [ ] Desktop Client (Flutter)
- [ ] End-to-End Encryption
- [ ] Shared Notes (Collaboration)
- [ ] Attachment Support
--- ---
@@ -564,4 +554,4 @@ androidx.localbroadcastmanager:localbroadcastmanager:1.1.0
--- ---
**Last updated:** December 25, 2025 **Last updated:** February 2026

View File

@@ -37,6 +37,50 @@
--- ---
## 📊 Ansichten & Layout _(NEU in v1.7.0+)_
### Darstellungsmodi
-**Listenansicht** - Klassisches Listen-Layout
-**Rasteransicht** _(NEU in v1.7.0)_ - Pinterest-artiges Staggered Grid mit dynamischen Vorschauzeilen
-**Layout-Umschalter** - Zwischen Listen- und Grid-Ansicht wechseln
-**Adaptive Spalten** - 2-3 Spalten basierend auf Bildschirmgröße
-**Grid als Standard** _(v1.8.0)_ - Neue Installationen starten im Grid-Modus
### Notiz-Sortierung _(NEU in v1.8.0)_
-**Nach Änderungsdatum** - Neueste oder älteste zuerst
-**Nach Erstelldatum** - Nach Erstellungszeitpunkt
-**Nach Titel** - A-Z oder Z-A
-**Nach Typ** - Textnotizen vs. Checklisten
-**Persistente Einstellungen** - Sortier-Option bleibt nach App-Neustart
-**Sortier-Dialog** - Richtungswahl im Hauptbildschirm
### Checklisten-Sortierung _(NEU in v1.8.0)_
-**Manuell** - Eigene Drag & Drop Reihenfolge
-**Alphabetisch** - A-Z Sortierung
-**Offene zuerst** - Unerledigte Items oben
-**Erledigte zuletzt** - Abgehakte Items unten
-**Visueller Trenner** - Zwischen offenen/erledigten Gruppen mit Anzahl
-**Auto-Sortierung** - Neu sortieren beim Abhaken/Öffnen
-**Drag über Grenzen** - Items wechseln Status beim Überqueren des Trenners
---
## 📌 Homescreen-Widgets _(NEU in v1.8.0)_
### Widget-Features
-**Textnotiz-Widget** - Beliebige Notiz auf dem Homescreen anzeigen
-**Checklisten-Widget** - Interaktive Checkboxen mit Sync zum Server
-**5 Größenklassen** - SMALL, NARROW_MED, NARROW_TALL, WIDE_MED, WIDE_TALL
-**Material You Farben** - Dynamische Farben passend zum System-Theme
-**Einstellbare Transparenz** - Hintergrund-Opazität (0-100%)
-**Sperr-Umschalter** - Versehentliche Bearbeitungen verhindern
-**Auto-Aktualisierung** - Updates nach Sync-Abschluss
-**Konfigurations-Activity** - Notiz-Auswahl und Einstellungen
-**Checklisten-Sortierung** _(v1.8.1)_ - Widgets übernehmen Sortier-Option
-**Visuelle Trenner** _(v1.8.1)_ - Zwischen offenen/erledigten Items
---
## 🌍 Mehrsprachigkeit _(NEU in v1.5.0)_ ## 🌍 Mehrsprachigkeit _(NEU in v1.5.0)_
### Unterstützte Sprachen ### Unterstützte Sprachen
@@ -129,9 +173,12 @@
### Sync-Mechanismus ### Sync-Mechanismus
-**Upload** - Lokale Änderungen zum Server -**Upload** - Lokale Änderungen zum Server
-**Download** - Server-Änderungen in App -**Download** - Server-Änderungen in App
-**Parallele Downloads** _(NEU in v1.8.0)_ - Bis zu 5 gleichzeitige Downloads
-**Konflikt-Erkennung** - Bei gleichzeitigen Änderungen -**Konflikt-Erkennung** - Bei gleichzeitigen Änderungen
-**Konfliktfreies Merging** - Last-Write-Wins via Timestamp -**Konfliktfreies Merging** - Last-Write-Wins via Timestamp
-**Sync-Status Tracking** - LOCAL_ONLY, PENDING, SYNCED, CONFLICT -**Server-Löschungs-Erkennung** _(NEU in v1.8.0)_ - Erkennt auf anderen Geräten gelöschte Notizen
-**Sync-Status Tracking** - LOCAL_ONLY, PENDING, SYNCED, CONFLICT, DELETED_ON_SERVER
-**Live Fortschritts-UI** _(NEU in v1.8.0)_ - Phasen-Anzeige mit Upload/Download-Zählern
-**Fehlerbehandlung** - Retry bei Netzwerkproblemen -**Fehlerbehandlung** - Retry bei Netzwerkproblemen
-**Offline-First** - App funktioniert ohne Server -**Offline-First** - App funktioniert ohne Server
@@ -140,6 +187,9 @@
-**HTTP/HTTPS** - HTTP nur lokal, HTTPS für extern -**HTTP/HTTPS** - HTTP nur lokal, HTTPS für extern
-**Username/Password** - Basic Authentication -**Username/Password** - Basic Authentication
-**Connection Test** - In Einstellungen testen -**Connection Test** - In Einstellungen testen
-**WiFi-Only Sync** _(NEU in v1.7.0)_ - Option nur über WiFi zu synchronisieren
-**VPN-Unterstützung** _(NEU in v1.7.0)_ - Sync funktioniert korrekt über VPN-Tunnels
-**Self-Signed SSL** _(NEU in v1.7.0)_ - Unterstützung für selbstsignierte Zertifikate
-**Server-URL Normalisierung** - Automatisches `/notes/` und `/notes-md/` _(NEU in v1.2.1)_ -**Server-URL Normalisierung** - Automatisches `/notes/` und `/notes-md/` _(NEU in v1.2.1)_
-**Flexible URL-Eingabe** - Beide Varianten funktionieren: `http://server/` und `http://server/notes/` -**Flexible URL-Eingabe** - Beide Varianten funktionieren: `http://server/` und `http://server/notes/`
@@ -196,11 +246,12 @@
## 🛠️ Technische Details ## 🛠️ Technische Details
### Plattform ### Plattform
- **Android 8.0+** (API 26+) - **Android 7.0+** (API 24+)
- **Target SDK 36** (Android 15) - **Target SDK 36** (Android 15)
- **Kotlin** - Moderne Programmiersprache - **Kotlin** - Moderne Programmiersprache
- **Jetpack Compose** - Deklaratives UI-Framework
- **Material Design 3** - Neueste Design-Richtlinien - **Material Design 3** - Neueste Design-Richtlinien
- **ViewBinding** - Typ-sichere View-Referenzen - **Jetpack Glance** _(v1.8.0)_ - Widget-Framework
### Architektur ### Architektur
- **MVVM-Light** - Einfache Architektur - **MVVM-Light** - Einfache Architektur
@@ -218,6 +269,7 @@
- **Gson** - JSON Serialization - **Gson** - JSON Serialization
- **WorkManager** - Background Tasks - **WorkManager** - Background Tasks
- **OkHttp** - HTTP Client (via Sardine) - **OkHttp** - HTTP Client (via Sardine)
- **Glance** _(v1.8.0)_ - Widget-Framework
### Build-Varianten ### Build-Varianten
- **Standard** - Universal APK (100% FOSS, keine Google-Dependencies) - **Standard** - Universal APK (100% FOSS, keine Google-Dependencies)
@@ -247,22 +299,12 @@
## 🔮 Zukünftige Features ## 🔮 Zukünftige Features
Geplant für kommende Versionen: Geplant für kommende Versionen siehe [UPCOMING.md](UPCOMING.md) für die vollständige Roadmap.
### v1.4.0 - Checklisten ### v2.0.0 - Legacy Cleanup
- **Checklisten-Notizen** - Neuer Notiz-Typ mit Checkboxen - **Veraltete Activities entfernen** - Durch Compose-Varianten ersetzen
- **Erledigte Items** - Durchstreichen/Abhaken - **LocalBroadcastManager → SharedFlow** - Moderne Event-Architektur
- **Drag & Drop** - Items neu anordnen - **WebDavSyncService aufteilen** - SyncOrchestrator, NoteUploader, NoteDownloader
### v1.5.0 - Internationalisierung
- **Mehrsprachigkeit** - Deutsch + Englisch UI
- **Sprachauswahl** - In Einstellungen wählbar
- **Vollständige Übersetzung** - Alle Strings in beiden Sprachen
### v1.6.0 - Modern APIs
- **LocalBroadcastManager ersetzen** - SharedFlow stattdessen
- **PackageInfo Flags** - PackageInfoFlags.of() verwenden
- **Komplexitäts-Refactoring** - Lange Funktionen aufteilen
--- ---
@@ -305,4 +347,4 @@ A: Ja! Lade die APK direkt von GitHub oder nutze F-Droid.
--- ---
**Letzte Aktualisierung:** v1.3.2 (2026-01-10) **Letzte Aktualisierung:** v1.8.1 (2026-02-11)

View File

@@ -37,6 +37,50 @@
--- ---
## 📊 Views & Layout _(NEW in v1.7.0+)_
### Display Modes
-**List View** - Classic list layout
-**Grid View** _(NEW in v1.7.0)_ - Pinterest-style staggered grid with dynamic preview lines
-**Layout toggle** - Switch between list and grid in settings
-**Adaptive columns** - 2-3 columns based on screen size
-**Grid as default** _(v1.8.0)_ - New installations default to grid view
### Note Sorting _(NEW in v1.8.0)_
-**Sort by Updated** - Newest or oldest first
-**Sort by Created** - By creation date
-**Sort by Title** - A-Z or Z-A
-**Sort by Type** - Text notes vs checklists
-**Persistent preferences** - Sort option saved across app restarts
-**Sort dialog** - Direction toggle in main screen
### Checklist Sorting _(NEW in v1.8.0)_
-**Manual** - Custom drag & drop order
-**Alphabetical** - A-Z sorting
-**Unchecked First** - Unchecked items on top
-**Checked Last** - Checked items at bottom
-**Visual separator** - Between unchecked/checked groups with count
-**Auto-sort on toggle** - Re-sorts when checking/unchecking items
-**Drag across boundaries** - Items auto-toggle state when crossing separator
---
## 📌 Homescreen Widgets _(NEW in v1.8.0)_
### Widget Features
-**Text note widget** - Display any note on homescreen
-**Checklist widget** - Interactive checkboxes that sync to server
-**5 size classes** - SMALL, NARROW_MED, NARROW_TALL, WIDE_MED, WIDE_TALL
-**Material You colors** - Dynamic colors matching system theme
-**Configurable opacity** - Background transparency (0-100%)
-**Lock toggle** - Prevent accidental edits
-**Auto-refresh** - Updates after sync completion
-**Configuration activity** - Note selection and settings
-**Checklist sorting** _(v1.8.1)_ - Widgets respect saved sort option
-**Visual separators** _(v1.8.1)_ - Between unchecked/checked items
---
## 🌍 Multilingual Support _(NEW in v1.5.0)_ ## 🌍 Multilingual Support _(NEW in v1.5.0)_
### Supported Languages ### Supported Languages
@@ -129,9 +173,12 @@
### Sync Mechanism ### Sync Mechanism
-**Upload** - Local changes to server -**Upload** - Local changes to server
-**Download** - Server changes to app -**Download** - Server changes to app
-**Parallel downloads** _(NEW in v1.8.0)_ - Up to 5 simultaneous downloads
-**Conflict detection** - On simultaneous changes -**Conflict detection** - On simultaneous changes
-**Conflict-free merging** - Last-Write-Wins via timestamp -**Conflict-free merging** - Last-Write-Wins via timestamp
-**Sync status tracking** - LOCAL_ONLY, PENDING, SYNCED, CONFLICT -**Server deletion detection** _(NEW in v1.8.0)_ - Detects notes deleted on other devices
-**Sync status tracking** - LOCAL_ONLY, PENDING, SYNCED, CONFLICT, DELETED_ON_SERVER
-**Live progress UI** _(NEW in v1.8.0)_ - Phase indicators with upload/download counters
-**Error handling** - Retry on network issues -**Error handling** - Retry on network issues
-**Offline-first** - App works without server -**Offline-first** - App works without server
@@ -140,6 +187,9 @@
-**HTTP/HTTPS** - HTTP only local, HTTPS for external -**HTTP/HTTPS** - HTTP only local, HTTPS for external
-**Username/password** - Basic authentication -**Username/password** - Basic authentication
-**Connection test** - Test in settings -**Connection test** - Test in settings
-**WiFi-only sync** _(NEW in v1.7.0)_ - Option to sync only on WiFi
-**VPN support** _(NEW in v1.7.0)_ - Sync works correctly through VPN tunnels
-**Self-signed SSL** _(NEW in v1.7.0)_ - Support for self-signed certificates
-**Server URL normalization** - Automatic `/notes/` and `/notes-md/` _(NEW in v1.2.1)_ -**Server URL normalization** - Automatic `/notes/` and `/notes-md/` _(NEW in v1.2.1)_
-**Flexible URL input** - Both variants work: `http://server/` and `http://server/notes/` -**Flexible URL input** - Both variants work: `http://server/` and `http://server/notes/`
@@ -196,11 +246,12 @@
## 🛠️ Technical Details ## 🛠️ Technical Details
### Platform ### Platform
- **Android 8.0+** (API 26+) - **Android 7.0+** (API 24+)
- **Target SDK 36** (Android 15) - **Target SDK 36** (Android 15)
- **Kotlin** - Modern programming language - **Kotlin** - Modern programming language
- **Jetpack Compose** - Declarative UI framework
- **Material Design 3** - Latest design guidelines - **Material Design 3** - Latest design guidelines
- **ViewBinding** - Type-safe view references - **Jetpack Glance** _(v1.8.0)_ - Widget framework
### Architecture ### Architecture
- **MVVM-Light** - Simple architecture - **MVVM-Light** - Simple architecture
@@ -218,6 +269,7 @@
- **Gson** - JSON serialization - **Gson** - JSON serialization
- **WorkManager** - Background tasks - **WorkManager** - Background tasks
- **OkHttp** - HTTP client (via Sardine) - **OkHttp** - HTTP client (via Sardine)
- **Glance** _(v1.8.0)_ - Widget framework
### Build Variants ### Build Variants
- **Standard** - Universal APK (100% FOSS, no Google dependencies) - **Standard** - Universal APK (100% FOSS, no Google dependencies)
@@ -247,22 +299,12 @@
## 🔮 Future Features ## 🔮 Future Features
Planned for upcoming versions: Planned for upcoming versions see [UPCOMING.md](UPCOMING.md) for the full roadmap.
### v1.4.0 - Checklists ### v2.0.0 - Legacy Cleanup
- **Checklist notes** - New note type with checkboxes - **Remove deprecated Activities** - Replace with Compose equivalents
- **Completed items** - Strike-through/check off - **LocalBroadcastManager → SharedFlow** - Modern event architecture
- **Drag & drop** - Reorder items - **WebDavSyncService split** - SyncOrchestrator, NoteUploader, NoteDownloader
### v1.5.0 - Internationalization
- **Multi-language** - German + English UI
- **Language selection** - Selectable in settings
- **Full translation** - All strings in both languages
### v1.6.0 - Modern APIs
- **Replace LocalBroadcastManager** - Use SharedFlow instead
- **PackageInfo Flags** - Use PackageInfoFlags.of()
- **Complexity refactoring** - Split long functions
--- ---
@@ -305,4 +347,4 @@ A: Yes! Download the APK directly from GitHub or use F-Droid.
--- ---
**Last update:** v1.3.2 (2026-01-10) **Last update:** v1.8.1 (2026-02-11)

146
docs/SELF_SIGNED_SSL.de.md Normal file
View File

@@ -0,0 +1,146 @@
# Selbstsignierte SSL-Zertifikate
**Seit:** v1.7.0
**Status:** ✅ Unterstützt
**🌍 Sprachen:** **Deutsch** · [English](SELF_SIGNED_SSL.md)
---
## Übersicht
Simple Notes Sync unterstützt die Verbindung zu WebDAV-Servern mit selbstsignierten SSL-Zertifikaten, z.B.:
- ownCloud/Nextcloud mit selbstsignierten Zertifikaten
- Synology NAS mit Standard-Zertifikaten
- Raspberry Pi oder Home-Server
- Interne Firmen-Server mit privaten CAs
## Anleitung
### Schritt 1: CA-Zertifikat des Servers exportieren
**Auf deinem Server:**
1. Finde deine Zertifikatsdatei (meist `.crt`, `.pem` oder `.der` Format)
2. Falls du das Zertifikat selbst erstellt hast, hast du es bereits
3. Für Synology NAS: Systemsteuerung → Sicherheit → Zertifikat → Exportieren
4. Für ownCloud/Nextcloud: Meist unter `/etc/ssl/certs/` auf dem Server
### Schritt 2: Zertifikat auf Android installieren
**Auf deinem Android-Gerät:**
1. **Übertrage** die `.crt` oder `.pem` Datei auf dein Handy (per E-Mail, USB, etc.)
2. **Öffne Einstellungen** → Sicherheit → Weitere Sicherheitseinstellungen (oder Verschlüsselung & Anmeldedaten)
3. **Von Speicher installieren** / "Zertifikat installieren"
- Wähle "CA-Zertifikat"
- **Warnung:** Android zeigt eine Sicherheitswarnung. Das ist normal.
- Tippe auf "Trotzdem installieren"
4. **Navigiere** zu deiner Zertifikatsdatei und wähle sie aus
5. **Benenne** es erkennbar (z.B. "Mein ownCloud CA")
6.**Fertig!** Das Zertifikat wird nun systemweit vertraut
### Schritt 3: Simple Notes Sync verbinden
1. Öffne Simple Notes Sync
2. Gehe zu **Einstellungen****Server-Einstellungen**
3. Gib deine **`https://` Server-URL** wie gewohnt ein
4. Die App vertraut nun deinem selbstsignierten Zertifikat ✅
---
## Sicherheitshinweise
### ⚠️ Wichtig
- Die Installation eines CA-Zertifikats gewährt Vertrauen für **alle** von dieser CA signierten Zertifikate
- Installiere nur Zertifikate aus vertrauenswürdigen Quellen
- Android warnt dich vor der Installation lies die Warnung sorgfältig
### 🔒 Warum das sicher ist
- Du installierst das Zertifikat **manuell** (bewusste Entscheidung)
- Die App nutzt Androids nativen Trust Store (keine eigene Validierung)
- Du kannst das Zertifikat jederzeit in den Android-Einstellungen entfernen
- F-Droid und Google Play konform (kein "allen vertrauen" Hack)
---
## Fehlerbehebung
### Zertifikat nicht vertraut
**Problem:** App zeigt weiterhin SSL-Fehler nach Zertifikatsinstallation
**Lösungen:**
1. **Installation prüfen:** Einstellungen → Sicherheit → Vertrauenswürdige Anmeldedaten → Tab "Nutzer"
2. **Zertifikatstyp prüfen:** Muss ein CA-Zertifikat sein, kein Server-Zertifikat
3. **App neustarten:** Simple Notes Sync schließen und wieder öffnen
4. **URL prüfen:** Muss `https://` verwenden (nicht `http://`)
### Selbstsigniert vs. CA-signiert
| Typ | Installation nötig | Sicherheit |
|-----|-------------------|------------|
| **Selbstsigniert** | ✅ Ja | Manuelles Vertrauen |
| **Let's Encrypt** | ❌ Nein | Automatisch |
| **Private CA** | ✅ Ja (CA-Root) | Automatisch für alle CA-signierten Zertifikate |
---
## Alternative: Let's Encrypt (Empfohlen)
Wenn dein Server öffentlich erreichbar ist, erwäge **Let's Encrypt** für kostenlose, automatisch erneuerte SSL-Zertifikate:
- Keine manuelle Zertifikatsinstallation nötig
- Von allen Geräten automatisch vertraut
- Einfacher für Endbenutzer
---
## Technische Details
### Implementierung
- Nutzt Androids **Network Security Config**
- Vertraut sowohl System- als auch Benutzer-CA-Zertifikaten
- Kein eigener TrustManager oder HostnameVerifier
- F-Droid und Play Store konform
### Konfiguration
Datei: `android/app/src/main/res/xml/network_security_config.xml`
```xml
<base-config>
<trust-anchors>
<certificates src="system" />
<certificates src="user" /> <!-- ← Aktiviert Self-Signed Support -->
</trust-anchors>
</base-config>
```
---
## FAQ
**F: Muss ich das Zertifikat nach App-Updates neu installieren?**
A: Nein, Zertifikate werden systemweit gespeichert, nicht pro App.
**F: Kann ich dasselbe Zertifikat für mehrere Apps verwenden?**
A: Ja, einmal installiert funktioniert es für alle Apps die Benutzerzertifikaten vertrauen.
**F: Wie entferne ich ein Zertifikat?**
A: Einstellungen → Sicherheit → Vertrauenswürdige Anmeldedaten → Tab "Nutzer" → Zertifikat antippen → Entfernen
**F: Funktioniert das auf Android 14+?**
A: Ja, getestet auf Android 7 bis 15 (API 24-35).
---
**Hilfe nötig?** Erstelle ein Issue auf [GitHub](https://github.com/inventory69/simple-notes-sync/issues)

View File

@@ -60,28 +60,91 @@
--- ---
## v1.7.0 - Staggered Grid Layout ## v1.7.0 - Grid View, WiFi-Only & VPN ✅
> **Status:** Geplant 📝 > **Status:** Released 🎉 (Januar 2026)
### 🎨 Adaptives Layout ### 🎨 Grid Layout
- **Staggered Grid** - Pinterest-artiges Layout mit `LazyVerticalStaggeredGrid` - **Pinterest-artiges Staggered Grid** - Lückenfreies Layout mit dynamischen Vorschauzeilen
- **Intelligente Größen** - Kleine Notizen (kurzer Text, wenige Checklist-Items) kompakt dargestellt - **Layout-Umschalter** - Zwischen Listen- und Grid-Ansicht wechseln
- **Layout-Umschalter** - Zwischen Listen- und Grid-Ansicht in Einstellungen wechseln - **Adaptive Spalten** - 2-3 Spalten basierend auf Bildschirmgröße
- **Adaptive Spalten** - 2-3 Spalten basierend auf Bildschirmgröße
- **120 FPS optimiert** - Lazy Loading für flüssiges Scrollen bei vielen Notizen
### 🔧 Server-Ordner Prüfung ### 📡 Sync-Verbesserungen
- **WebDAV Folder Check** - Prüft ob der Ordner auf dem Server existiert und beschreibbar ist - **WiFi-Only Sync Toggle** - Nur über WiFi synchronisieren
- **Bessere Fehlermeldungen** - Hilfreiche Hinweise bei Server-Problemen - **VPN-Unterstützung** - Sync funktioniert korrekt über VPN-Tunnels
- **Connection-Test Verbesserung** - Prüft Read/Write Permissions - **Self-Signed SSL** - Dokumentation und Unterstützung für selbstsignierte Zertifikate
-**Server-Wechsel-Erkennung** - Alle Notizen auf PENDING zurückgesetzt bei URL-Änderung
### 🔧 Technische Verbesserungen ---
- **Code-Refactoring** - LargeClass Komponenten aufteilen (WebDavSyncService, SettingsActivity) ## v1.7.1 - Android 9 Fix & VPN ✅
- **Verbesserte Progress-Dialoge** - Material Design 3 konform
> **Status:** Released 🎉 (Februar 2026)
-**Android 9 Crash Fix** - `getForegroundInfo()` für WorkManager auf API 28 implementiert
-**VPN-Kompatibilität** - WiFi Socket-Binding erkennt Wireguard VPN-Interfaces
-**SafeSardineWrapper** - Saubere HTTP-Verbindungs-Bereinigung
---
## v1.7.2 - Timestamp & Löschungs-Fixes ✅
> **Status:** Released 🎉 (Februar 2026)
-**Server-mtime als Wahrheitsquelle** - Behebt Timestamp-Probleme mit externen Editoren
-**Deletion Tracker Mutex** - Thread-sichere Batch-Löschungen
-**ISO8601 Timezone-Parsing** - Multi-Format-Unterstützung
-**E-Tag Batch-Caching** - Performance-Verbesserung
-**Memory Leak Prävention** - SafeSardineWrapper mit Closeable
---
## v1.8.0 - Widgets, Sortierung & Erweiterter Sync ✅
> **Status:** Released 🎉 (Februar 2026)
### 📌 Homescreen-Widgets
-**Volles Jetpack Glance Framework** - 5 responsive Größenklassen
-**Interaktive Checklisten** - Checkboxen die zum Server synchronisieren
-**Material You Farben** - Dynamische Farben mit einstellbarer Opazität
-**Sperr-Umschalter** - Versehentliche Bearbeitungen verhindern
-**Konfigurations-Activity** - Notiz-Auswahl und Einstellungen
### 📊 Sortierung
-**Notiz-Sortierung** - Nach Titel, Änderungsdatum, Erstelldatum, Typ
-**Checklisten-Sortierung** - Manuell, alphabetisch, offene zuerst, erledigte zuletzt
-**Visuelle Trenner** - Zwischen offenen/erledigten Gruppen
-**Drag über Grenzen** - Auto-Toggle beim Überqueren des Trenners
### 🔄 Sync-Verbesserungen
-**Parallele Downloads** - Bis zu 5 gleichzeitig (konfigurierbar)
-**Server-Löschungs-Erkennung** - Erkennt auf anderen Clients gelöschte Notizen
-**Live Sync-Fortschritt** - Phasen-Anzeige mit Zählern
-**Sync-Status Legende** - Hilfe-Dialog für alle Sync-Icons
### ✨ UX
-**Post-Update Changelog** - Zeigt lokalisierten Changelog nach Update
-**Grid als Standard** - Neue Installationen starten im Grid-Modus
-**Toast → Banner Migration** - Einheitliches Benachrichtigungssystem
---
## v1.8.1 - Bugfix & Polish ✅
> **Status:** Released 🎉 (Februar 2026)
-**Checklisten-Sortierung Persistenz** - Sortier-Option korrekt wiederhergestellt
-**Widget Scroll Fix** - Scroll funktioniert auf Standard 3×2 Widget-Größe
-**Widget Checklisten-Sortierung** - Widgets übernehmen gespeicherte Sortier-Option
-**Drag Cross-Boundary** - Drag & Drop über Checked/Unchecked-Trenner
-**Sync Rate-Limiting** - Globaler 30s Cooldown zwischen Auto-Syncs
-**Detekt: 0 Issues** - Alle 12 Findings behoben
--- ---
@@ -110,7 +173,6 @@
### 🎨 UI Features ### 🎨 UI Features
- **Widget** - Schnellzugriff vom Homescreen
- **Kategorien/Tags** - Notizen organisieren - **Kategorien/Tags** - Notizen organisieren
- **Suche** - Volltextsuche in Notizen - **Suche** - Volltextsuche in Notizen

View File

@@ -60,28 +60,91 @@
--- ---
## v1.7.0 - Staggered Grid Layout ## v1.7.0 - Grid View, WiFi-Only & VPN ✅
> **Status:** Planned 📝 > **Status:** Released 🎉 (January 2026)
### 🎨 Adaptive Layout ### 🎨 Grid Layout
- **Staggered Grid** - Pinterest-style layout using `LazyVerticalStaggeredGrid` - **Pinterest-style staggered grid** - Gapless layout with dynamic preview lines
- **Smart sizing** - Small notes (short text, few checklist items) displayed compactly - **Layout toggle** - Switch between list and grid in settings
- **Layout toggle** - Switch between List and Grid view in settings - **Adaptive columns** - 2-3 columns based on screen size
- **Adaptive columns** - 2-3 columns based on screen size
- **120 FPS optimized** - Lazy loading for smooth scrolling with many notes
### 🔧 Server Folder Check ### 📡 Sync Improvements
- **WebDAV folder check** - Checks if folder exists and is writable on server - **WiFi-only sync toggle** - Sync only when connected to WiFi
- **Better error messages** - Helpful hints for server problems - **VPN support** - Sync works correctly through VPN tunnels
- **Connection test improvement** - Checks read/write permissions - **Self-signed SSL** - Documentation and support for self-signed certificates
-**Server change detection** - All notes reset to PENDING when server URL changes
### 🔧 Technical Improvements ---
- **Code refactoring** - Split LargeClass components (WebDavSyncService, SettingsActivity) ## v1.7.1 - Android 9 Fix & VPN ✅
- **Improved progress dialogs** - Material Design 3 compliant
> **Status:** Released 🎉 (February 2026)
-**Android 9 crash fix** - Implemented `getForegroundInfo()` for WorkManager on API 28
-**VPN compatibility** - WiFi socket binding detects Wireguard VPN interfaces
-**SafeSardineWrapper** - Proper HTTP connection cleanup
---
## v1.7.2 - Timestamp & Deletion Fixes ✅
> **Status:** Released 🎉 (February 2026)
-**Server mtime as source of truth** - Fixes external editor timestamp issues
-**Deletion tracker mutex** - Thread-safe batch deletes
-**ISO8601 timezone parsing** - Multi-format support
-**E-Tag batch caching** - Performance improvement
-**Memory leak prevention** - SafeSardineWrapper with Closeable
---
## v1.8.0 - Widgets, Sorting & Advanced Sync ✅
> **Status:** Released 🎉 (February 2026)
### 📌 Homescreen Widgets
-**Full Jetpack Glance framework** - 5 responsive size classes
-**Interactive checklists** - Checkboxes that sync to server
-**Material You colors** - Dynamic colors with configurable opacity
-**Lock toggle** - Prevent accidental edits
-**Configuration activity** - Note selection and settings
### 📊 Sorting
-**Note sorting** - By title, date modified, date created, type
-**Checklist sorting** - Manual, alphabetical, unchecked first, checked last
-**Visual separators** - Between unchecked/checked groups
-**Drag across boundaries** - Auto-toggle state on cross-boundary drag
### 🔄 Sync Improvements
-**Parallel downloads** - Up to 5 simultaneous (configurable)
-**Server deletion detection** - Detects notes deleted on other clients
-**Live sync progress** - Phase indicators with counters
-**Sync status legend** - Help dialog explaining all sync icons
### ✨ UX
-**Post-update changelog** - Shows localized changelog on first launch after update
-**Grid as default** - New installations default to grid view
-**Toast → Banner migration** - Unified notification system
---
## v1.8.1 - Bugfix & Polish ✅
> **Status:** Released 🎉 (February 2026)
-**Checklist sort persistence** - Sort option correctly restored when reopening
-**Widget scroll fix** - Scroll works on standard 3×2 widget size
-**Widget checklist sorting** - Widgets apply saved sort option
-**Drag cross-boundary** - Drag & drop across checked/unchecked separator
-**Sync rate-limiting** - Global 30s cooldown between auto-syncs
-**Detekt: 0 issues** - All 12 findings resolved
--- ---
@@ -110,7 +173,6 @@
### 🎨 UI Features ### 🎨 UI Features
- **Widget** - Quick access from homescreen
- **Categories/Tags** - Organize notes - **Categories/Tags** - Organize notes
- **Search** - Full-text search in notes - **Search** - Full-text search in notes

View File

@@ -5,34 +5,50 @@ Diese Verzeichnisstruktur enthält alle Metadaten für die F-Droid-Veröffentlic
## Struktur ## Struktur
``` ```
fastlane/metadata/android/de-DE/ fastlane/metadata/android/
├── title.txt # App-Name (max 50 Zeichen) ├── de-DE/ # Deutsche Lokalisierung (primär)
├── short_description.txt # Kurzbeschreibung (max 80 Zeichen) │ ├── title.txt # App-Name (max 50 Zeichen)
├── full_description.txt # Vollständige Beschreibung (max 4000 Zeichen) │ ├── short_description.txt # Kurzbeschreibung (max 80 Zeichen)
│ ├── full_description.txt # Vollständige Beschreibung (max 4000 Zeichen)
│ ├── changelogs/
│ │ ├── 1.txt ... 21.txt # Changelogs pro versionCode (max 500 Zeichen!)
│ └── images/
│ └── phoneScreenshots/ # Screenshots (PNG/JPG, 320-3840px breit)
│ ├── 1.png ... 5.png
└── en-US/ # Englische Lokalisierung
├── title.txt
├── short_description.txt
├── full_description.txt
├── changelogs/ ├── changelogs/
── 1.txt # Changelog für Version 1 ── 1.txt ... 21.txt
└── images/ └── images/
└── phoneScreenshots/ # Screenshots (PNG/JPG, 320-3840px breit) └── phoneScreenshots/
├── 1.png # Hauptansicht (Notizliste)
├── 2.png # Notiz-Editor
├── 3.png # Settings
└── 4.png # Empty State
``` ```
## Wichtige Limits
| Feld | Max. Länge | Hinweis |
|------|-----------|---------|
| `title.txt` | 50 Zeichen | App-Name |
| `short_description.txt` | 80 Zeichen | Kurzbeschreibung |
| `full_description.txt` | 4000 Zeichen | Vollständige Beschreibung |
| `changelogs/*.txt` | **500 Bytes** | Pro versionCode, **Bytes nicht Zeichen!** |
> **Achtung:** Changelogs werden in **Bytes** gemessen! UTF-8 Umlaute (ä, ö, ü) zählen als 2 Bytes.
## Screenshots erstellen ## Screenshots erstellen
Verwende einen Android Emulator oder physisches Gerät mit: Verwende ein physisches Gerät oder Emulator mit:
- Material You Theme aktiviert - Material You Theme aktiviert
- Deutsche Sprache - Deutsche/Englische Sprache je nach Locale
- Screenshots in hoher Auflösung (1080x2400 empfohlen) - Screenshots in hoher Auflösung (1080x2400 empfohlen)
### Screenshot-Reihenfolge:
1. **Notizliste** - Mit mehreren Beispiel-Notizen, Sync-Status sichtbar
2. **Editor** - Zeige eine bearbeitete Notiz mit Titel und Inhalt
3. **Settings** - Server-Konfiguration mit erfolgreichem Server-Status
4. **Empty State** - Schöne leere Ansicht mit Material 3 Card
## F-Droid Build-Konfiguration ## F-Droid Build-Konfiguration
Die App verwendet den `fdroid` Build-Flavor ohne proprietäre Dependencies. Die App verwendet den `fdroid` Build-Flavor ohne proprietäre Dependencies.
Siehe `build.gradle.kts` für Details. Siehe `android/app/build.gradle.kts` für Details.
## Aktuelle Version
- **versionName:** 1.8.1
- **versionCode:** 21

View File

@@ -1,5 +1,5 @@
Unter der Haube haben wir ordentlich aufgeraumt: Unter der Haube haben wir ordentlich aufgeräumt:
- Verbesserte Sync-Performance durch optimierten Code - Verbesserte Sync-Performance durch optimierten Code
- Stabilere Fehlerbehandlung bei Verbindungsproblemen - Stabilere Fehlerbehandlung bei Verbindungsproblemen
- Speichereffizientere Datenverarbeitung - Speichereffizientere Datenverarbeitung
- Datenschutz-Hinweis fur Datei-Logging hinzugefugt - Datenschutz-Hinweis für Datei-Logging hinzugefügt

View File

@@ -1,12 +1,12 @@
v1.2.2 - Rückwärtskompatibilität für v1.2.0 User v1.2.2 - Rückwärtskompatibilität für v1.2.0 User
Kritische Fehlerbehebung Kritische Fehlerbehebung
• Server-Wiederherstellung findet jetzt ALLE Notizen (Root + /notes/) • Server-Restore findet jetzt ALLE Notizen (Root + /notes/)
• User die von v1.2.0 upgraden verlieren keine Daten mehr • Upgrade von v1.2.0 ohne Datenverlust
• Alte Notizen aus Root-Ordner werden beim Restore gefunden • Alte Notizen aus Root-Ordner werden gefunden
Technische Details Technische Details
• Dual-Mode Download nur bei Server-Restore aktiv • Dual-Mode Download nur bei Server-Restore aktiv
• Normale Syncs bleiben schnell (scannen nur /notes/) • Normale Syncs bleiben schnell (nur /notes/)
• Automatische Deduplication verhindert Duplikate • Automatische Deduplication verhindert Duplikate
• Sanfte Migration: Neue Uploads gehen in /notes/, alte bleiben lesbar • Sanfte Migration: Uploads /notes/, alte bleiben lesbar

View File

@@ -1,29 +1,31 @@
Simple Notes Sync ist eine minimalistische Notizen-App mit WebDAV-Synchronisation und modernen Features. Simple Notes Sync ist eine minimalistische Notizen-App mit WebDAV-Synchronisation und modernen Features.
Hauptfunktionen: Hauptfunktionen:
• Text-Notizen und Checklisten (Tap-to-Check, Drag & Drop) • Text-Notizen und Checklisten (Tap-to-Check, Drag & Drop, Sortierung)
NEU: Raster-Ansicht (Grid View) für Notizen • Raster- und Listen-Ansicht mit Notizfarben
• Homescreen-Widgets (Quick-Note, Checkliste mit interaktiven Checkboxen)
• Multi-Device Sync (Handy, Tablet, Desktop) • Multi-Device Sync (Handy, Tablet, Desktop)
• WebDAV-Synchronisation mit eigenem Server (Nextcloud, ownCloud, etc.) • WebDAV-Synchronisation mit eigenem Server (Nextcloud, ownCloud, etc.)
• Markdown-Export und Import für Desktop-Editoren (Obsidian, VS Code) • Markdown-Export und Import für Desktop-Editoren (Obsidian, VS Code)
NEU: WiFi-only Sync, VPN-Unterstützung, Verschlüsselung für lokale Backups • WiFi-only Sync, VPN-Unterstützung, parallele Downloads
• Konfigurierbare Sync-Trigger: onSave, onResume, WiFi, periodisch, Boot • Konfigurierbare Sync-Trigger: onSave, onResume, WiFi, periodisch, Boot
• Komplett offline nutzbar • Komplett offline nutzbar keine Werbung, keine Tracker
• Keine Werbung, keine Tracker
Datenschutz & Sicherheit: Datenschutz & Sicherheit:
• Alle Daten bleiben bei dir keine Cloud, keine Tracking-Bibliotheken • Alle Daten bleiben bei dir keine Cloud, keine Tracking-Bibliotheken
• Unterstützung für selbstsignierte SSL-Zertifikate (Self-signed SSL) • Unterstützung für selbstsignierte SSL-Zertifikate
SHA-256 Hash des Signaturzertifikats in App und Releases sichtbar Verschlüsselte lokale Backups
Synchronisation: Synchronisation:
Automatisch oder manuell, optimierte Performance, periodischer Sync optional Parallele Downloads (bis zu 5 gleichzeitig)
Intelligente Konfliktlösung, Lösch-Tracking, Batch-Aktionen Live Sync-Fortschritt mit Phasen-Anzeige
• Intelligente Konfliktlösung, Server-Löschungs-Erkennung
• Post-Update Changelog-Dialog
UI & Design: UI & Design:
• Moderne Jetpack Compose Oberfläche • Moderne Jetpack Compose Oberfläche
• Material Design 3, Dynamic Colors, Dark Mode • Material Design 3, Dynamic Colors, Dark Mode
Animationen und Live Sync-Status Notiz- und Checklisten-Sortierung (Titel, Datum, Farbe, alphabetisch)
Mehrsprachig: Mehrsprachig:
• Deutsch und Englisch, automatische Erkennung, App-Sprachauswahl • Deutsch und Englisch, automatische Erkennung, App-Sprachauswahl

View File

@@ -0,0 +1,8 @@
• Material Design 3 with Dynamic Colors
• Swipe-to-Delete with confirmation dialog
• Server Backup & Restore feature
• Improved Empty State view
• German localization
• Splash Screen Support (Android 12+)
• Performance improvements
• Bug fixes

View File

@@ -0,0 +1,5 @@
• Configurable sync interval (15/30/60 minutes)
• Transparent battery usage display (measured: 0.4%/day at 30min)
• Doze Mode optimizations for more reliable background syncs
• About section with app information and GitHub links
• Various bugfixes and performance improvements

View File

@@ -1,29 +1,31 @@
Simple Notes Sync is a minimalist note-taking app with WebDAV sync and modern features. Simple Notes Sync is a minimalist note-taking app with WebDAV sync and modern features.
Key Features: Key Features:
• Text notes and checklists (tap-to-check, drag & drop) • Text notes and checklists (tap-to-check, drag & drop, sorting)
NEW: Grid view for notes Grid and list view with note color support
• Homescreen widgets (quick-note, checklist with interactive checkboxes)
• Multi-device sync (phone, tablet, desktop) • Multi-device sync (phone, tablet, desktop)
• WebDAV sync with your own server (Nextcloud, ownCloud, etc.) • WebDAV sync with your own server (Nextcloud, ownCloud, etc.)
• Markdown export/import for desktop editors (Obsidian, VS Code) • Markdown export/import for desktop editors (Obsidian, VS Code)
NEW: WiFi-only sync, VPN support, encryption for local backups • WiFi-only sync, VPN support, parallel downloads
• Configurable sync triggers: onSave, onResume, WiFi, periodic, boot • Configurable sync triggers: onSave, onResume, WiFi, periodic, boot
• Fully usable offline • Fully usable offline no ads, no trackers
• No ads, no trackers
Privacy & Security: Privacy & Security:
• Your data stays with you no cloud, no tracking libraries • Your data stays with you no cloud, no tracking libraries
• Support for self-signed SSL certificates • Support for self-signed SSL certificates
SHA-256 hash of signing certificate shown in app and releases Encrypted local backups
Synchronization: Synchronization:
Automatic or manual, optimized performance, optional periodic sync Parallel downloads (up to 5 simultaneous)
Smart conflict resolution, deletion tracking, batch actions Live sync progress with phase indicators
• Smart conflict resolution, server deletion detection
• Post-update changelog dialog
UI & Design: UI & Design:
• Modern Jetpack Compose interface • Modern Jetpack Compose interface
• Material Design 3, dynamic colors, dark mode • Material Design 3, dynamic colors, dark mode
Animations and live sync status Note & checklist sorting (title, date, color, alphabetical)
Multilingual: Multilingual:
• English and German, automatic detection, in-app language selector • English and German, automatic detection, in-app language selector