Unify and streamline documentation, changelogs, and app descriptions (DE/EN). Improved clarity, removed redundancies, and updated feature highlights for v1.7.0. [skip ci]
This commit is contained in:
68
.github/workflows/build-production-apk.yml
vendored
68
.github/workflows/build-production-apk.yml
vendored
@@ -2,11 +2,11 @@ name: Build Android Production APK
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ main ] # Nur bei Push/Merge auf main triggern
|
||||
workflow_dispatch: # Ermöglicht manuellen Trigger
|
||||
branches: [ main ] # Only trigger on push/merge to main
|
||||
workflow_dispatch: # Enables manual trigger
|
||||
|
||||
permissions:
|
||||
contents: write # Fuer Release-Erstellung erforderlich
|
||||
contents: write # Required for release creation
|
||||
|
||||
jobs:
|
||||
build:
|
||||
@@ -14,50 +14,50 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Code auschecken
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Java einrichten
|
||||
- name: Setup Java
|
||||
uses: actions/setup-java@v4
|
||||
with:
|
||||
distribution: 'temurin'
|
||||
java-version: '17'
|
||||
|
||||
- name: Semantic Versionsnummer aus build.gradle.kts extrahieren
|
||||
- name: Extract semantic version from build.gradle.kts
|
||||
run: |
|
||||
# Version aus build.gradle.kts fuer F-Droid Kompatibilität
|
||||
# Version from build.gradle.kts for F-Droid compatibility
|
||||
VERSION_NAME=$(grep "versionName = " android/app/build.gradle.kts | sed 's/.*versionName = "\(.*\)".*/\1/')
|
||||
VERSION_CODE=$(grep "versionCode = " android/app/build.gradle.kts | sed 's/.*versionCode = \([0-9]*\).*/\1/')
|
||||
|
||||
# Semantische Versionierung (nicht datums-basiert)
|
||||
# Semantic versioning (not date-based)
|
||||
BUILD_NUMBER="$VERSION_CODE"
|
||||
|
||||
echo "VERSION_NAME=$VERSION_NAME" >> $GITHUB_ENV
|
||||
echo "BUILD_NUMBER=$BUILD_NUMBER" >> $GITHUB_ENV
|
||||
echo "VERSION_TAG=v$VERSION_NAME" >> $GITHUB_ENV
|
||||
|
||||
echo "🚀 Baue Version: $VERSION_NAME (Code: $BUILD_NUMBER)"
|
||||
echo "🚀 Building version: $VERSION_NAME (Code: $BUILD_NUMBER)"
|
||||
|
||||
- name: Version aus build.gradle.kts verifizieren
|
||||
- name: Verify version from build.gradle.kts
|
||||
run: |
|
||||
echo "✅ Verwende Version aus build.gradle.kts:"
|
||||
echo "✅ Using version from build.gradle.kts:"
|
||||
grep -E "versionCode|versionName" android/app/build.gradle.kts
|
||||
|
||||
- name: Android Signing konfigurieren
|
||||
- name: Configure Android signing
|
||||
run: |
|
||||
echo "${{ secrets.KEYSTORE_BASE64 }}" | base64 -d > android/app/simple-notes-release.jks
|
||||
echo "storePassword=${{ secrets.KEYSTORE_PASSWORD }}" > android/key.properties
|
||||
echo "keyPassword=${{ secrets.KEY_PASSWORD }}" >> android/key.properties
|
||||
echo "keyAlias=${{ secrets.KEY_ALIAS }}" >> android/key.properties
|
||||
echo "storeFile=simple-notes-release.jks" >> android/key.properties
|
||||
echo "✅ Signing-Konfiguration erstellt"
|
||||
echo "✅ Signing configuration created"
|
||||
|
||||
- name: Produktions-APK bauen (Standard + F-Droid Flavors)
|
||||
- name: Build production APK (Standard + F-Droid Flavors)
|
||||
run: |
|
||||
cd android
|
||||
./gradlew assembleStandardRelease assembleFdroidRelease --no-daemon --stacktrace
|
||||
|
||||
- name: APK-Varianten mit Versionsnamen kopieren
|
||||
- name: Copy APK variants with version names
|
||||
run: |
|
||||
mkdir -p apk-output
|
||||
|
||||
@@ -69,34 +69,34 @@ jobs:
|
||||
cp android/app/build/outputs/apk/fdroid/release/app-fdroid-release.apk \
|
||||
apk-output/simple-notes-sync-v${{ env.VERSION_NAME }}-fdroid.apk
|
||||
|
||||
echo "✅ APK-Dateien vorbereitet:"
|
||||
echo "✅ APK files prepared:"
|
||||
ls -lh apk-output/
|
||||
|
||||
- name: APK-Artefakte hochladen
|
||||
- name: Upload APK artifacts
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: simple-notes-sync-apks-v${{ env.VERSION_NAME }}
|
||||
path: apk-output/*.apk
|
||||
retention-days: 90 # Produktions-Builds länger aufbewahren
|
||||
retention-days: 90 # Keep production builds longer
|
||||
|
||||
- name: Commit-Informationen auslesen
|
||||
- name: Extract commit information
|
||||
run: |
|
||||
echo "SHORT_SHA=$(git rev-parse --short HEAD)" >> $GITHUB_ENV
|
||||
echo "COMMIT_DATE=$(git log -1 --format=%cd --date=iso-strict)" >> $GITHUB_ENV
|
||||
|
||||
- name: F-Droid Changelogs lesen
|
||||
- name: Read F-Droid changelogs
|
||||
run: |
|
||||
# Lese deutsche Changelog (Hauptsprache) - Use printf to ensure proper formatting
|
||||
# Read German changelog (main language) - Use printf to ensure proper formatting
|
||||
if [ -f "fastlane/metadata/android/de-DE/changelogs/${{ env.BUILD_NUMBER }}.txt" ]; then
|
||||
CHANGELOG_CONTENT=$(cat "fastlane/metadata/android/de-DE/changelogs/${{ env.BUILD_NUMBER }}.txt")
|
||||
echo "CHANGELOG_DE<<GHADELIMITER" >> $GITHUB_ENV
|
||||
echo "$CHANGELOG_CONTENT" >> $GITHUB_ENV
|
||||
echo "GHADELIMITER" >> $GITHUB_ENV
|
||||
else
|
||||
echo "CHANGELOG_DE=Keine deutschen Release Notes verfügbar." >> $GITHUB_ENV
|
||||
echo "CHANGELOG_DE=No German release notes available." >> $GITHUB_ENV
|
||||
fi
|
||||
|
||||
# Lese englische Changelog (optional)
|
||||
# Read English changelog (optional)
|
||||
if [ -f "fastlane/metadata/android/en-US/changelogs/${{ env.BUILD_NUMBER }}.txt" ]; then
|
||||
CHANGELOG_CONTENT_EN=$(cat "fastlane/metadata/android/en-US/changelogs/${{ env.BUILD_NUMBER }}.txt")
|
||||
echo "CHANGELOG_EN<<GHADELIMITER" >> $GITHUB_ENV
|
||||
@@ -127,25 +127,19 @@ jobs:
|
||||
|
||||
</details>
|
||||
|
||||
---
|
||||
|
||||
## 📦 Downloads
|
||||
|
||||
| Variante | Datei | Info |
|
||||
|----------|-------|------|
|
||||
| **🏆 Empfohlen** | `simple-notes-sync-v${{ env.VERSION_NAME }}-standard.apk` | Standard-Version (funktioniert auf allen Geraeten) |
|
||||
| F-Droid | `simple-notes-sync-v${{ env.VERSION_NAME }}-fdroid.apk` | Fuer F-Droid Store |
|
||||
| Variant | File | Info |
|
||||
|---------|------|------|
|
||||
| **🏆 Recommended** | `simple-notes-sync-v${{ env.VERSION_NAME }}-standard.apk` | Standard version (works on all devices) |
|
||||
| F-Droid | `simple-notes-sync-v${{ env.VERSION_NAME }}-fdroid.apk` | For F-Droid Store |
|
||||
|
||||
---
|
||||
|
||||
## 📊 Build-Info
|
||||
## 📊 Build Info
|
||||
|
||||
- **Version:** ${{ env.VERSION_NAME }} (Code: ${{ env.BUILD_NUMBER }})
|
||||
- **Datum:** ${{ env.COMMIT_DATE }}
|
||||
- **Date:** ${{ env.COMMIT_DATE }}
|
||||
- **Commit:** ${{ env.SHORT_SHA }}
|
||||
|
||||
---
|
||||
|
||||
## 🔐 APK Signature Verification
|
||||
|
||||
All APKs are signed with the official release certificate.
|
||||
@@ -157,8 +151,6 @@ jobs:
|
||||
42:A1:C6:13:BB:C6:73:04:5A:F3:DC:81:91:BF:9C:B6:45:6E:E4:4C:7D:CE:40:C7:CF:B5:66:FA:CB:69:F1:6A
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
**[📖 Dokumentation](https://github.com/inventory69/simple-notes-sync/blob/main/QUICKSTART.md)** · **[🐛 Issue melden](https://github.com/inventory69/simple-notes-sync/issues)**
|
||||
**[📖 Documentation](https://github.com/inventory69/simple-notes-sync/blob/main/QUICKSTART.md)** · **[🐛 Report Bug](https://github.com/inventory69/simple-notes-sync/issues)**
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
121
README.de.md
121
README.de.md
@@ -1,63 +1,84 @@
|
||||
<div align="center">
|
||||
|
||||
# Simple Notes Sync
|
||||
|
||||
**Minimalistische Offline-Notizen mit Auto-Sync zu deinem eigenen Server**
|
||||
|
||||
[](https://www.android.com/)
|
||||
[](https://kotlinlang.org/)
|
||||

|
||||
[](https://m3.material.io/)
|
||||
[](LICENSE)
|
||||
|
||||
[<img src="https://gitlab.com/IzzyOnDroid/repo/-/raw/master/assets/IzzyOnDroid.png" alt="Get it on IzzyOnDroid" height="60">](https://apt.izzysoft.de/fdroid/index/apk/dev.dettmer.simplenotes)
|
||||
[<img src="https://raw.githubusercontent.com/ImranR98/Obtainium/main/assets/graphics/badge_obtainium.png" alt="Get it on Obtainium" height="60">](http://apps.obtainium.imranr.dev/redirect.html?r=obtainium://add/https://github.com/inventory69/simple-notes-sync)
|
||||
[<img src="https://f-droid.org/badge/get-it-on.png" alt="Get it on F-Droid" height="60">](https://f-droid.org/packages/dev.dettmer.simplenotes/)
|
||||
|
||||
[📱 APK Download](https://github.com/inventory69/simple-notes-sync/releases/latest) · [📖 Dokumentation](docs/DOCS.de.md) · [🚀 Quick Start](QUICKSTART.de.md)
|
||||
|
||||
**🌍** **Deutsch** · [English](README.md)
|
||||
|
||||
<br />
|
||||
<img src="android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png" alt="Logo" />
|
||||
<br /><br />
|
||||
</div>
|
||||
|
||||
---
|
||||
<h1 align="center">Simple Notes Sync</h1>
|
||||
|
||||
<h4 align="center">Minimalistische Offline-Notizen mit intelligentem Sync - Einfachheit trifft smarte Synchronisation.</h4>
|
||||
|
||||
<div align="center">
|
||||
<a href="https://www.android.com/">
|
||||
<img src="https://img.shields.io/badge/Android-8.0%2B-3DDC84?style=for-the-badge&logo=android&logoColor=white" alt="Android" />
|
||||
</a>
|
||||
<a href="https://kotlinlang.org/">
|
||||
<img src="https://img.shields.io/badge/Kotlin-7F52FF?style=for-the-badge&logo=kotlin&logoColor=white" alt="Kotlin" />
|
||||
</a>
|
||||
<a href="https://developer.android.com/compose/">
|
||||
<img src="https://img.shields.io/badge/Jetpack%20Compose-4285F4?style=for-the-badge&logo=jetpackcompose&logoColor=white" alt="Jetpack Compose" />
|
||||
</a>
|
||||
<a href="https://m3.material.io/">
|
||||
<img src="https://img.shields.io/badge/Material_3-6750A4?style=for-the-badge&logo=material-design&logoColor=white" alt="Material 3" />
|
||||
</a>
|
||||
<a href="LICENSE">
|
||||
<img src="https://img.shields.io/badge/License-MIT-F5C400?style=for-the-badge" alt="License" />
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<p align="center">
|
||||
<a href="https://apt.izzysoft.de/fdroid/index/apk/dev.dettmer.simplenotes" style="display:inline-block;">
|
||||
<img src="https://gitlab.com/IzzyOnDroid/repo/-/raw/master/assets/IzzyOnDroid.png" alt="Get it on IzzyOnDroid" height="80" style="vertical-align:middle; margin-right:10px;">
|
||||
</a>
|
||||
<a href="http://apps.obtainium.imranr.dev/redirect.html?r=obtainium://add/https://github.com/inventory69/simple-notes-sync" style="display:inline-block;">
|
||||
<img src="https://raw.githubusercontent.com/ImranR98/Obtainium/main/assets/graphics/badge_obtainium.png" alt="Get it on Obtainium" height="55" style="vertical-align:middle; margin-right:10px;">
|
||||
</a>
|
||||
<a href="https://f-droid.org/packages/dev.dettmer.simplenotes/" style="display:inline-block;">
|
||||
<img src="https://f-droid.org/badge/get-it-on.png" alt="Get it on F-Droid" height="80" style="vertical-align:middle;">
|
||||
</a>
|
||||
</p>
|
||||
<div align="center">
|
||||
<strong>SHA-256 Hash des Signaturzertifikats:</strong><br /> 42:A1:C6:13:BB:C6:73:04:5A:F3:DC:81:91:BF:9C:B6:45:6E:E4:4C:7D:CE:40:C7:CF:B5:66:FA:CB:69:F1:6A
|
||||
</div>
|
||||
|
||||
<div align="center">
|
||||
|
||||
<br />[📱 APK Download](https://github.com/inventory69/simple-notes-sync/releases/latest) · [📖 Dokumentation](docs/DOCS.de.md) · [🚀 Schnellstart](QUICKSTART.de.md)<br />
|
||||
**🌍** Deutsch · [English](README.md)
|
||||
|
||||
</div>
|
||||
|
||||
## 📱 Screenshots
|
||||
|
||||
<p align="center">
|
||||
<img src="fastlane/metadata/android/de-DE/images/phoneScreenshots/1.png" width="250" alt="Sync-Status">
|
||||
<img src="fastlane/metadata/android/de-DE/images/phoneScreenshots/2.png" width="250" alt="Notiz bearbeiten">
|
||||
<img src="fastlane/metadata/android/de-DE/images/phoneScreenshots/3.png" width="250" alt="Checkliste bearbeiten">
|
||||
<img src="fastlane/metadata/android/de-DE/images/phoneScreenshots/4.png" width="250" alt="Einstellungen">
|
||||
<img src="fastlane/metadata/android/de-DE/images/phoneScreenshots/5.png" width="250" alt="Server-Einstellungen">
|
||||
<img src="fastlane/metadata/android/de-DE/images/phoneScreenshots/7.png" width="250" alt="Sync-Einstellungen">
|
||||
<img src="fastlane/metadata/android/de-DE/images/phoneScreenshots/1.png" width="250" alt="Sync status">
|
||||
<img src="fastlane/metadata/android/de-DE/images/phoneScreenshots/2.png" width="250" alt="Edit note">
|
||||
<img src="fastlane/metadata/android/de-DE/images/phoneScreenshots/3.png" width="250" alt="Edit checklist">
|
||||
<img src="fastlane/metadata/android/de-DE/images/phoneScreenshots/4.png" width="250" alt="Settings">
|
||||
<img src="fastlane/metadata/android/de-DE/images/phoneScreenshots/5.png" width="250" alt="Server settings">
|
||||
<img src="fastlane/metadata/android/de-DE/images/phoneScreenshots/7.png" width="250" alt="Sync settings">
|
||||
</p>
|
||||
|
||||
---
|
||||
|
||||
<div align="center">
|
||||
|
||||
📝 Offline-first • 🔄 Smart Sync • 🔒 Self-hosted • 🔋 Akkuschonend
|
||||
📝 Offline-first • 🔄 Smart Sync • 🔒 Self-hosted • 🔋 Akkuschonend
|
||||
|
||||
</div>
|
||||
|
||||
---
|
||||
|
||||
## ✨ Highlights
|
||||
|
||||
- ✅ **NEU: Checklisten** - Tap-to-Check, Drag & Drop
|
||||
- 🌍 **NEU: Mehrsprachig** - Deutsch/Englisch mit Sprachauswahl
|
||||
- 📝 **Offline-First** - Funktioniert ohne Internet
|
||||
- 🔄 **Konfigurierbare Sync-Trigger** - onSave, onResume, WiFi-Verbindung, periodisch (15/30/60 Min), Boot
|
||||
- 🔒 **Self-Hosted** - Deine Daten bleiben bei dir (WebDAV)
|
||||
- 💾 **Lokales Backup** - Export/Import als JSON-Datei
|
||||
- 🖥️ **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** - Dark Mode & Dynamic Colors
|
||||
- 📝 **Offline-first** – Funktioniert ohne Internet
|
||||
- 📊 **Flexible Ansichten** – Listen- und Grid-Layout
|
||||
- ✅ **Checklisten** – Tap-to-Check, Drag & Drop
|
||||
- 🌍 **Mehrsprachig** – Deutsch/Englisch mit Sprachauswahl
|
||||
- 🔄 **Konfigurierbare Sync-Trigger** – onSave, onResume, WiFi, periodisch (15/30/60 Min), Boot
|
||||
- 🔒 **Self-hosted** – Deine Daten bleiben bei dir (WebDAV)
|
||||
- 💾 **Lokales Backup** – Export/Import als JSON-Datei (optional verschlüsselt)
|
||||
- 🖥️ **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
|
||||
|
||||
➡️ **Vollständige Feature-Liste:** [FEATURES.de.md](docs/FEATURES.de.md)
|
||||
|
||||
---
|
||||
➡️ **Vollständige Feature-Liste:** [docs/FEATURES.de.md](docs/FEATURES.de.md)
|
||||
|
||||
## 🚀 Schnellstart
|
||||
|
||||
@@ -87,8 +108,6 @@ docker compose up -d
|
||||
|
||||
➡️ **Ausführliche Anleitung:** [QUICKSTART.de.md](QUICKSTART.de.md)
|
||||
|
||||
---
|
||||
|
||||
## 📚 Dokumentation
|
||||
|
||||
| Dokument | Inhalt |
|
||||
@@ -103,8 +122,6 @@ docker compose up -d
|
||||
| **[UPCOMING.de.md](docs/UPCOMING.de.md)** | Geplante Features 🚀 |
|
||||
| **[ÜBERSETZEN.md](docs/TRANSLATING.de.md)** | Übersetzungsanleitung 🌍 |
|
||||
|
||||
---
|
||||
|
||||
## 🛠️ Entwicklung
|
||||
|
||||
```bash
|
||||
@@ -112,21 +129,15 @@ cd android
|
||||
./gradlew assembleStandardRelease
|
||||
```
|
||||
|
||||
➡️ **Build-Anleitung:** [DOCS.md](docs/DOCS.md#-build--deployment)
|
||||
|
||||
---
|
||||
➡️ **Build-Anleitung:** [docs/DOCS.de.md#-build--deployment](docs/DOCS.de.md#-build--deployment)
|
||||
|
||||
## 🤝 Contributing
|
||||
|
||||
Beiträge willkommen! Siehe [CONTRIBUTING.md](CONTRIBUTING.md)
|
||||
|
||||
---
|
||||
|
||||
## 📄 Lizenz
|
||||
|
||||
MIT License - siehe [LICENSE](LICENSE)
|
||||
|
||||
---
|
||||
MIT License – siehe [LICENSE](LICENSE)
|
||||
|
||||
<div align="center">
|
||||
|
||||
|
||||
102
README.md
102
README.md
@@ -1,29 +1,53 @@
|
||||
<div align="center">
|
||||
<br />
|
||||
<img src="android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png" alt="Logo" />
|
||||
<br /><br />
|
||||
</div>
|
||||
|
||||
<h1 align="center">Simple Notes Sync</h1>
|
||||
|
||||
<h4 align="center">Clean, offline-first notes with intelligent sync - simplicity meets smart synchronization.</h4>
|
||||
|
||||
<div align="center">
|
||||
<a href="https://www.android.com/">
|
||||
<img src="https://img.shields.io/badge/Android-8.0%2B-3DDC84?style=for-the-badge&logo=android&logoColor=white" alt="Android" />
|
||||
</a>
|
||||
<a href="https://kotlinlang.org/">
|
||||
<img src="https://img.shields.io/badge/Kotlin-7F52FF?style=for-the-badge&logo=kotlin&logoColor=white" alt="Kotlin" />
|
||||
</a>
|
||||
<a href="https://developer.android.com/compose/">
|
||||
<img src="https://img.shields.io/badge/Jetpack%20Compose-4285F4?style=for-the-badge&logo=jetpackcompose&logoColor=white" alt="Jetpack Compose" />
|
||||
</a>
|
||||
<a href="https://m3.material.io/">
|
||||
<img src="https://img.shields.io/badge/Material_3-6750A4?style=for-the-badge&logo=material-design&logoColor=white" alt="Material 3" />
|
||||
</a>
|
||||
<a href="LICENSE">
|
||||
<img src="https://img.shields.io/badge/License-MIT-F5C400?style=for-the-badge" alt="License" />
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<p align="center">
|
||||
<a href="https://apt.izzysoft.de/fdroid/index/apk/dev.dettmer.simplenotes" style="display:inline-block;">
|
||||
<img src="https://gitlab.com/IzzyOnDroid/repo/-/raw/master/assets/IzzyOnDroid.png" alt="Get it on IzzyOnDroid" height="80" style="vertical-align:middle; margin-right:10px;">
|
||||
</a>
|
||||
<a href="http://apps.obtainium.imranr.dev/redirect.html?r=obtainium://add/https://github.com/inventory69/simple-notes-sync" style="display:inline-block;">
|
||||
<img src="https://raw.githubusercontent.com/ImranR98/Obtainium/main/assets/graphics/badge_obtainium.png" alt="Get it on Obtainium" height="55" style="vertical-align:middle; margin-right:10px;">
|
||||
</a>
|
||||
<a href="https://f-droid.org/packages/dev.dettmer.simplenotes/" style="display:inline-block;">
|
||||
<img src="https://f-droid.org/badge/get-it-on.png" alt="Get it on F-Droid" height="80" style="vertical-align:middle;">
|
||||
</a>
|
||||
</p>
|
||||
<div align="center">
|
||||
<strong>SHA-256 hash of the signing certificate:</strong><br />42:A1:C6:13:BB:C6:73:04:5A:F3:DC:81:91:BF:9C:B6:45:6E:E4:4C:7D:CE:40:C7:CF:B5:66:FA:CB:69:F1:6A
|
||||
</div>
|
||||
|
||||
<div align="center">
|
||||
|
||||
# Simple Notes Sync
|
||||
|
||||
**Minimalist offline notes with auto-sync to your own server**
|
||||
|
||||
[](https://www.android.com/)
|
||||
[](https://kotlinlang.org/)
|
||||

|
||||
[](https://m3.material.io/)
|
||||
[](LICENSE)
|
||||
|
||||
[<img src="https://gitlab.com/IzzyOnDroid/repo/-/raw/master/assets/IzzyOnDroid.png" alt="Get it on IzzyOnDroid" height="60">](https://apt.izzysoft.de/fdroid/index/apk/dev.dettmer.simplenotes)
|
||||
[<img src="https://raw.githubusercontent.com/ImranR98/Obtainium/main/assets/graphics/badge_obtainium.png" alt="Get it on Obtainium" height="60">](http://apps.obtainium.imranr.dev/redirect.html?r=obtainium://add/https://github.com/inventory69/simple-notes-sync)
|
||||
[<img src="https://f-droid.org/badge/get-it-on.png" alt="Get it on F-Droid" height="60">](https://f-droid.org/packages/dev.dettmer.simplenotes/)
|
||||
|
||||
|
||||
|
||||
[📱 APK Download](https://github.com/inventory69/simple-notes-sync/releases/latest) · [📖 Documentation](docs/DOCS.md) · [🚀 Quick Start](QUICKSTART.md)
|
||||
|
||||
<br />[📱 APK Download](https://github.com/inventory69/simple-notes-sync/releases/latest) · [📖 Documentation](docs/DOCS.md) · [🚀 Quick Start](QUICKSTART.md)<br />
|
||||
**🌍** [Deutsch](README.de.md) · **English**
|
||||
|
||||
</div>
|
||||
|
||||
---
|
||||
|
||||
## 📱 Screenshots
|
||||
|
||||
<p align="center">
|
||||
@@ -35,32 +59,27 @@
|
||||
<img src="fastlane/metadata/android/en-US/images/phoneScreenshots/7.png" width="250" alt="Sync settings">
|
||||
</p>
|
||||
|
||||
---
|
||||
|
||||
<div align="center">
|
||||
|
||||
📝 Offline-first • 🔄 Smart Sync • 🔒 Self-hosted • 🔋 Battery-friendly
|
||||
📝 Offline-first • 🔄 Smart Sync • 🔒 Self-hosted • 🔋 Battery-friendly
|
||||
|
||||
</div>
|
||||
|
||||
---
|
||||
|
||||
## ✨ Highlights
|
||||
|
||||
- ✅ **NEW: Checklists** - Tap-to-check, drag & drop
|
||||
- 🌍 **NEW: Multilingual** - English/German with language selector
|
||||
- 📝 **Offline-first** - Works without internet
|
||||
- 📊 **Flexible views** - Switch between list and grid layout
|
||||
- ✅ **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
|
||||
- 🔒 **Self-hosted** - Your data stays with you (WebDAV)
|
||||
- 💾 **Local backup** - Export/Import as JSON file
|
||||
- 💾 **Local backup** - Export/Import as JSON file (encryption available)
|
||||
- 🖥️ **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** - Dark mode & dynamic colors
|
||||
- 🎨 **Material Design 3** - Dynamic dark/light mode & colors based on system settings
|
||||
|
||||
➡️ **Complete feature list:** [FEATURES.md](docs/FEATURES.md)
|
||||
|
||||
---
|
||||
|
||||
## 🚀 Quick Start
|
||||
|
||||
### 1. Server Setup (5 minutes)
|
||||
@@ -89,21 +108,6 @@ docker compose up -d
|
||||
|
||||
➡️ **Detailed guide:** [QUICKSTART.md](QUICKSTART.md)
|
||||
|
||||
---
|
||||
|
||||
## 🔐 APK Verification
|
||||
|
||||
All official releases are signed with the same certificate.
|
||||
|
||||
**Recommended:** Verify with [AppVerifier](https://github.com/nicholson-lab/AppVerifier) (Android app)
|
||||
|
||||
**Expected SHA-256:**
|
||||
```
|
||||
42:A1:C6:13:BB:C6:73:04:5A:F3:DC:81:91:BF:9C:B6:45:6E:E4:4C:7D:CE:40:C7:CF:B5:66:FA:CB:69:F1:6A
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📚 Documentation
|
||||
|
||||
| Document | Content |
|
||||
@@ -125,20 +129,14 @@ cd android
|
||||
|
||||
➡️ **Build guide:** [DOCS.md](docs/DOCS.md#-build--deployment)
|
||||
|
||||
---
|
||||
|
||||
## 🤝 Contributing
|
||||
|
||||
Contributions welcome! See [CONTRIBUTING.md](CONTRIBUTING.md)
|
||||
|
||||
---
|
||||
|
||||
## 📄 License
|
||||
|
||||
MIT License - see [LICENSE](LICENSE)
|
||||
|
||||
---
|
||||
|
||||
<div align="center">
|
||||
|
||||
**v1.7.0** · Built with ❤️ using Kotlin + Jetpack Compose + Material Design 3
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
• Grid-Ansicht: Pinterest-Style Layout ohne Lücken
|
||||
• Grid-Ansicht: Konsistente Abstände, Scroll-Position bleibt erhalten
|
||||
• Nur-WLAN Sync Toggle in Einstellungen
|
||||
• VPN-Unterstützung: Sync funktioniert korrekt bei aktivem VPN
|
||||
• Server-Wechsel: Sync-Status wird für alle Notizen zurückgesetzt
|
||||
• Self-signed SSL: Dokumentation für eigene Zertifikate
|
||||
• Schnellere Server-Prüfung (1s Timeout)
|
||||
• "Sync läuft bereits" Feedback
|
||||
• Neu: Raster-Ansicht - Danke an freemen
|
||||
• Neu: Nur-WLAN Sync Toggle in Einstellungen
|
||||
• Neu: Verschlüsselung bei lokalen Backups - Danke an @SilentCoderHere (#9)
|
||||
• Behoben: Sync funktioniert korrekt bei aktivem VPN - Danke an @roughnecks (#11)
|
||||
• Verbessert: Server-Wechsel - Sync-Status wird für alle Notizen zurückgesetzt
|
||||
• Verbessert: "Sync läuft bereits" Feedback bei weiteren Ausführungen
|
||||
• Verschiedene Fixes und UI-Verbesserungen
|
||||
|
||||
@@ -1,62 +1,32 @@
|
||||
Simple Notes Sync ist eine minimalistische Notizen-App mit WebDAV-Synchronisation.
|
||||
Simple Notes Sync ist eine minimalistische Notizen-App mit WebDAV-Synchronisation und modernen Features.
|
||||
|
||||
HAUPTFUNKTIONEN:
|
||||
|
||||
• Text-Notizen und Checklisten erstellen
|
||||
• Checklisten mit Tap-to-Check und Drag & Drop
|
||||
• Auswahlmodus: Long-Press zur Mehrfachauswahl für Batch-Aktionen
|
||||
• WebDAV-Synchronisation mit eigenem Server
|
||||
Hauptfunktionen:
|
||||
• Text-Notizen und Checklisten (Tap-to-Check, Drag & Drop)
|
||||
• NEU: Raster-Ansicht (Grid View) für Notizen
|
||||
• Multi-Device Sync (Handy, Tablet, Desktop)
|
||||
• Markdown-Export für Obsidian/Desktop-Editoren
|
||||
• Checklisten als GitHub-Style Task-Listen exportieren
|
||||
• Automatische Synchronisation im Heim-WLAN
|
||||
• Konfigurierbares Sync-Interval (15/30/60 Minuten)
|
||||
• Material Design 3 mit Dynamic Colors (Android 12+)
|
||||
• Jetpack Compose UI - modern, schnell und flüssig
|
||||
• WebDAV-Synchronisation mit eigenem Server (Nextcloud, ownCloud, etc.)
|
||||
• Markdown-Export und Import für Desktop-Editoren (Obsidian, VS Code)
|
||||
• NEU: WiFi-only Sync, VPN-Unterstützung, Verschlüsselung für lokale Backups
|
||||
• Konfigurierbare Sync-Trigger: onSave, onResume, WiFi, periodisch, Boot
|
||||
• Komplett offline nutzbar
|
||||
• Keine Werbung, keine Tracker
|
||||
|
||||
MEHRSPRACHIG:
|
||||
Datenschutz & Sicherheit:
|
||||
• Alle Daten bleiben bei dir – keine Cloud, keine Tracking-Bibliotheken
|
||||
• Unterstützung für selbstsignierte SSL-Zertifikate (Self-signed SSL)
|
||||
• SHA-256 Hash des Signaturzertifikats in App und Releases sichtbar
|
||||
|
||||
• Englische und deutsche Sprachunterstützung
|
||||
• Per-App Sprachauswahl (Android 13+)
|
||||
• Automatische Systemsprachen-Erkennung
|
||||
• Über 400 übersetzte Strings
|
||||
Synchronisation:
|
||||
• Automatisch oder manuell, optimierte Performance, periodischer Sync optional
|
||||
• Intelligente Konfliktlösung, Lösch-Tracking, Batch-Aktionen
|
||||
|
||||
DATENSCHUTZ:
|
||||
UI & Design:
|
||||
• Moderne Jetpack Compose Oberfläche
|
||||
• Material Design 3, Dynamic Colors, Dark Mode
|
||||
• Animationen und Live Sync-Status
|
||||
|
||||
Deine Daten bleiben bei dir! Die App kommuniziert nur mit deinem eigenen WebDAV-Server. Keine Cloud-Dienste, keine Tracking-Bibliotheken, keine Analysetools.
|
||||
|
||||
MULTI-DEVICE SYNC:
|
||||
|
||||
• Notizen synchronisieren automatisch zwischen allen Geräten
|
||||
• Lösch-Tracking verhindert "Zombie-Notizen"
|
||||
• Intelligente Konfliktlösung durch Timestamps
|
||||
• Markdown-Dateien für Desktop-Bearbeitung (Obsidian, VS Code, etc.)
|
||||
• Änderungen von Desktop-Editoren werden automatisch importiert
|
||||
|
||||
SYNCHRONISATION:
|
||||
|
||||
• Unterstützt alle WebDAV-Server (Nextcloud, ownCloud, etc.)
|
||||
• Konfigurierbare Sync-Trigger: Wähle einzeln, wann synchronisiert wird
|
||||
• 5 Trigger: onSave (nach dem Speichern), onResume (beim Öffnen), WiFi-Connect, Periodic (15/30/60 Min), Boot
|
||||
• Offline-Modus: Alle Netzwerkfunktionen mit einem Schalter deaktivieren
|
||||
• Smarte Defaults: nur ereignisbasierte Trigger aktiv (~0.2%/Tag Akku)
|
||||
• Periodischer Sync optional (Standard: AUS)
|
||||
• Optimierte Performance: überspringt unveränderte Dateien (~2-3s Sync-Zeit)
|
||||
• E-Tag Caching für 20x schnellere "keine Änderungen" Checks
|
||||
• Silent-Sync Modus: kein Banner bei Auto-Sync
|
||||
• Doze Mode optimiert für zuverlässige Background-Syncs
|
||||
• Manuelle Synchronisation jederzeit möglich
|
||||
|
||||
MATERIAL DESIGN 3:
|
||||
|
||||
• Moderne Jetpack Compose Benutzeroberfläche
|
||||
• Dynamic Colors (Material You) auf Android 12+
|
||||
• Dark Mode Support
|
||||
• Auswahlmodus mit Batch-Löschen
|
||||
• Live Sync-Status Anzeige
|
||||
• Flüssige Slide-Animationen
|
||||
Mehrsprachig:
|
||||
• Deutsch und Englisch, automatische Erkennung, App-Sprachauswahl
|
||||
|
||||
Open Source unter MIT-Lizenz
|
||||
Quellcode: https://github.com/inventory69/simple-notes-sync
|
||||
@@ -1,8 +1,7 @@
|
||||
• Grid view: Pinterest-style layout without gaps
|
||||
• Grid view: Consistent spacing, scroll position preserved
|
||||
• WiFi-only sync toggle in settings
|
||||
• VPN support: Sync works correctly when VPN is active
|
||||
• Server change: Sync status resets to pending for all notes
|
||||
• Self-signed SSL: Documentation for custom certificates
|
||||
• Faster server check (1s timeout)
|
||||
• "Sync already running" feedback
|
||||
• New: Grid view - Thanks to freemen
|
||||
• New: WiFi-only sync toggle in settings
|
||||
• New: Encryption for local backups - Thanks to @SilentCoderHere (#9)
|
||||
• Fixed: Sync works correctly when VPN is active - Thanks to @roughnecks (#11)
|
||||
• Improved: Server change - Sync status resets for all notes
|
||||
• Improved: "Sync already running" feedback for additional executions
|
||||
• Various fixes and UI improvements
|
||||
|
||||
@@ -1,62 +1,32 @@
|
||||
Simple Notes Sync is a minimalist note-taking app with WebDAV synchronization.
|
||||
Simple Notes Sync is a minimalist note-taking app with WebDAV sync and modern features.
|
||||
|
||||
KEY FEATURES:
|
||||
|
||||
• Create text notes and checklists
|
||||
• Checklists with tap-to-check, drag & drop reordering
|
||||
• Selection mode: long-press to select multiple notes for batch actions
|
||||
• WebDAV synchronization with your own server
|
||||
Key Features:
|
||||
• Text notes and checklists (tap-to-check, drag & drop)
|
||||
• NEW: Grid view for notes
|
||||
• Multi-device sync (phone, tablet, desktop)
|
||||
• Markdown export for Obsidian/desktop editors
|
||||
• Checklists export as GitHub-style task lists
|
||||
• Automatic synchronization on home WiFi
|
||||
• Configurable sync interval (15/30/60 minutes)
|
||||
• Material Design 3 with Dynamic Colors (Android 12+)
|
||||
• Jetpack Compose UI - modern, fast, and smooth
|
||||
• WebDAV sync with your own server (Nextcloud, ownCloud, etc.)
|
||||
• Markdown export/import for desktop editors (Obsidian, VS Code)
|
||||
• NEW: WiFi-only sync, VPN support, encryption for local backups
|
||||
• Configurable sync triggers: onSave, onResume, WiFi, periodic, boot
|
||||
• Fully usable offline
|
||||
• No ads, no trackers
|
||||
|
||||
MULTILINGUAL:
|
||||
Privacy & Security:
|
||||
• Your data stays with you – no cloud, no tracking libraries
|
||||
• Support for self-signed SSL certificates
|
||||
• SHA-256 hash of signing certificate shown in app and releases
|
||||
|
||||
• English and German language support
|
||||
• Per-App Language selector (Android 13+)
|
||||
• Automatic system language detection
|
||||
• 400+ translated strings
|
||||
Synchronization:
|
||||
• Automatic or manual, optimized performance, optional periodic sync
|
||||
• Smart conflict resolution, deletion tracking, batch actions
|
||||
|
||||
PRIVACY:
|
||||
UI & Design:
|
||||
• Modern Jetpack Compose interface
|
||||
• Material Design 3, dynamic colors, dark mode
|
||||
• Animations and live sync status
|
||||
|
||||
Your data stays with you! The app only communicates with your own WebDAV server. No cloud services, no tracking libraries, no analytics tools.
|
||||
|
||||
MULTI-DEVICE SYNC:
|
||||
|
||||
• Notes sync automatically between all your devices
|
||||
• Deletion tracking prevents "zombie notes"
|
||||
• Smart conflict resolution through timestamps
|
||||
• Markdown files for desktop editing (Obsidian, VS Code, etc.)
|
||||
• Changes from desktop editors are auto-imported
|
||||
|
||||
SYNCHRONIZATION:
|
||||
|
||||
• Supports all WebDAV servers (Nextcloud, ownCloud, etc.)
|
||||
• Configurable Sync Triggers: Choose individually when to sync
|
||||
• 5 triggers: onSave (after saving), onResume (on open), WiFi-Connect, Periodic (15/30/60 min), Boot
|
||||
• Offline Mode: Disable all network features with one switch
|
||||
• Smart defaults: event-driven triggers only (~0.2%/day battery)
|
||||
• Periodic sync optional (default: OFF)
|
||||
• Optimized performance: skips unchanged files (~2-3s sync time)
|
||||
• E-Tag caching for 20x faster "no changes" checks
|
||||
• Silent-Sync mode: no banner during auto-sync
|
||||
• Doze Mode optimized for reliable background syncs
|
||||
• Manual synchronization available anytime
|
||||
|
||||
MATERIAL DESIGN 3:
|
||||
|
||||
• Modern Jetpack Compose user interface
|
||||
• Dynamic Colors (Material You) on Android 12+
|
||||
• Dark Mode support
|
||||
• Selection mode with batch delete
|
||||
• Live sync status indicator
|
||||
• Smooth slide animations
|
||||
Multilingual:
|
||||
• English and German, automatic detection, in-app language selector
|
||||
|
||||
Open Source under MIT License
|
||||
Source code: https://github.com/inventory69/simple-notes-sync
|
||||
|
||||
Reference in New Issue
Block a user