jeiel85/markleaf-android
jeiel85/markleaf-android has 143 GitHub stars and 15 forks. GitHot measured +1 stars in 24 hours and +5 in 7 days. Last checked 2026-11-09 09:24 UTC. Last push 2026-11-03.
So werden diese Zahlen gemessen
A lightweight, local-first Markdown note app for Android.
Gemessener Sternzuwachs
- in 24h
- +1
- in 7 days
- +5
- in 15 days
- Aktualisierung verzögert
- in 1 month
- Aktualisierung verzögert
Nettoänderungen in überlappenden Zeiträumen, keine Tagessummen. Fehlende Messwerte bleiben leer. Sterne zeigen Interesse, nicht Qualität.
README.de.md
Original
Markleaf
Gedanken, die sich leicht ansammeln – aufgeräumte Markdown-Notizen
Eine local-first, minimalistische Markdown-Notiz-App für Android
English · 한국어 · 日本語 · 简体中文 · Deutsch · Español · Français · Hrvatski · Русский · Tiếng Việt · Slovenčina
GitHub-Repository · Discussions (Feedback) · GitLab-Mirror (archiviert)
/ Schnelleinfügen → reines Markdown → Live-Vorschau
Tablet mit 3 Spalten — Tag-Leiste · Notizliste · Editor auf einem Bildschirm
🍃 Was ist Markleaf?
Markleaf ist eine Android-Markdown-Notiz-App, die bewusst auf Ballast verzichtet, damit du dich auf zwei Dinge konzentrieren kannst: festhalten und ordnen. Deine Daten liegen ausschließlich auf deinem Gerät, und das standardisierte Markdown-Format garantiert volle Eigentümerschaft und Portabilität. Auch die Synchronisierung läuft nur über einen von dir gewählten Ordner – Markleaf synchronisiert und lädt selbst nie etwas hoch.
Branding-Seite ansehen · Aktuelle Version: v2.71.0 · Datenschutzerklärung · F-Droid · Google Play
✨ Hauptfunktionen
Schreiben & Vorschau
/Schnelleinfügen – Befehle am Zeilenanfang suchen und Überschriften, Listen, Tabellen, Callouts, Wikilinks, Bilder und mehr als Standard-Markdown einfügen- Live-Markdown-Vorschau – sofortiger Wechsel zwischen Bearbeitung und Vorschau, oder Live-Syntaxfärbung über die Option Show Markdown syntax
- GFM-Tabellen / Checkboxen / Zitate / Callouts (
> [!NOTE]…) – alle in der Vorschau gerendert - Syntax-Highlighting für Codeblöcke – Token-Färbung für 10 Sprachen: Kotlin, Java, Python, JavaScript/TypeScript, Bash, JSON, YAML, XML, SQL
- Fußnoten (
[^N]) Referenz ↔ Definition-Sprung – tippe auf die Hochzahl, um sanft zur Definition zu scrollen - Bildanhänge + Alt-Text-Bearbeitung – als isolierte Kopien im internen App-Speicher abgelegt (keine Medienberechtigung nötig)
- Smarter Markdown-Formatierungs-Umschalter – Auswahl oder das Wort um den Cursor in Fett/Kursiv/Durchgestrichen/Inline-Code einschließen; bereits eingeschlossenen Text mit einem weiteren Tippen sauber wieder lösen
- Tastenkürzel – Strg/Cmd+B, I, K, Umschalt+S für Fett, Kursiv, Link und Durchgestrichen auf einer Hardware-Tastatur
- Inhaltsverzeichnis (TOC) – im Vorschaumodus zu Überschriften (H1–H3) springen, um lange Notizen zu navigieren
- Schriftwahl – serifenlos, mit Serifen oder Monospace, oder eine eigene
.ttf/.otf-Schriftdatei (bleibt auf dem Gerät); Codeblöcke bleiben stets in Monospace - Fokusmodus / Wort-, Zeichen- & Lesezeit-Statistik / Suchen & Ersetzen innerhalb einer Notiz
Ordnen & Navigieren
- Tag-basierte Klassifizierung + Tag-Vervollständigung – schreibe einfach
#tagsin den Text für automatische Indizierung, keine Ordner; vorhandene Tags werden beim Tippen von#automatisch vervollständigt - Wikilinks (
[[Title]]) + Backlinks-Panel – Autovervollständigung, und auf einen Blick sehen, was auf diese Notiz verweist - Quick Switcher (Ctrl+K) – Sprung per Titel-Teilstring im Obsidian-Stil
- Volltextsuche auf SQLite-FTS-Basis – schnell, bis in den Fließtext
- Anheften / Archivieren / Papierkorb – der Papierkorb fragt vor dem endgültigen Löschen noch einmal nach
Sync & Export (No-Cloud-Prinzip)
- Ordner-Spiegel-Synchronisierung – spiegelt jede Notiz als
.md-Datei in einen per SAF gewählten Ordner (Drive/Dropbox/Syncthing/OneDrive/NAS usw.). Markleaf synchronisiert selbst nie; die Synchronisierung wird der externen App überlassen, die diesen Ordner synchronisiert .md/.txt-Dateien zum Lesen öffnen – Datei öffnen… im ⋮-Menü oder ein Tippen im Dateimanager öffnet die Datei gerendert und schreibgeschützt; eine Notiz entsteht erst mit Als Notiz speichern (ohne Überschrift wird der Dateiname zum Titel). Aus einer anderen App geteilte Dateien werden weiterhin sofort übernommen. Tags in per Sync übernommenen Notizen werden sofort erkannt- Export einzelner / aller Notizen als
.md - Senden über das System-Share-Sheet
Design & Barrierefreiheit
- Markleaf-Grün-Theme + Material-You-Umschalter – Systemfarben des Hintergrundbilds ab Android 12 optional
- Automatischer Dunkelmodus – folgt der Systemeinstellung
- 3-Spalten-Layout für Tablets – Tag-Seitenleiste · Notizliste · Editor; tippe einen Tag in der Seitenleiste an, um die Notizliste direkt zu filtern (Notizliste weiterhin einklappbar)
- Oberfläche in 11 Sprachen – Koreanisch / Englisch / Spanisch / Japanisch / Französisch / Deutsch / Vereinfachtes Chinesisch / Kroatisch / Russisch / Vietnamesisch / Slowakisch
- Option zum Blockieren von Screenshots / Vorschau in zuletzt verwendeten Apps – für vertrauliche Notizen
🔗 Arbeitet mit dem Markdown-Ordner, den du schon hast
Markleaf hat kein eigenes Vault-Format. Zeig ihm einen Ordner — auch einen, den Obsidian, Logseq oder dein Texteditor bereits öffnet — und es arbeitet mit den Dateien, die dort liegen.
- Einfache Dateien, die dir schon gehören. Eine Notiz ist eine
.md- (oder.txt-)Datei. Leg vorhandene Dateien in den Ordner, und Markleaf übernimmt sie als Notizen, sobald es das nächste Mal in den Vordergrund kommt — ohne Importschritt. - Dein Frontmatter bleibt erhalten. Markleaf ergänzt einen kleinen YAML-Header (
markleaf_id, Zeitstempel, pinned/archived), um eine Datei geräteübergreifend einer Notiz zuzuordnen, und alles, was es nicht kennt, kommt unverändert wieder heraus — die eingerückten Blocklisten, in denen Obsidian Tags schreibt, verschachtelte Maps, Kommentare und Quoting eingeschlossen. Der Header, den es ergänzt, ist eine strikte Teilmenge von YAML, die Obsidian, GitHub und VS Code alle parsen. - Dieselbe Syntax, die du ohnehin schreibst.
[[Wikilinks]]mit Backlink-Panel,#Tagsdirekt im Text, GFM-Tabellen und -Checkboxen,> [!NOTE]-Callouts und einCtrl+K-Quick-Switcher im Obsidian-Stil. - Gleicht selbstständig ab, aber vorsichtig. Änderungen von anderswo werden übernommen, sobald Markleaf wieder in den Vordergrund kommt (höchstens einmal pro Minute). Eine Änderung aus einem anderen Editor wird auch dann bemerkt, wenn dieser Markleafs Frontmatter nie anfasst — der Abgleich vergleicht den Text, nicht nur den Zeitstempel. Eine Datei gewinnt nur, wenn sie tatsächlich neuer ist; haben sich beide Seiten bewegt, landet die entfernte Fassung als eigene Notiz, statt deine Änderungen zu überschreiben, und automatisch gelöscht wird nie etwas.
[!IMPORTANT] Zwei Dinge, bevor du Markleaf auf ein echtes Vault richtest.
- Ein Ordner, keine Unterordner. Markleaf liest die Dateien direkt in dem gewählten Ordner und steigt nicht in Unterverzeichnisse hinab. Ein in Ordner gegliedertes Vault trifft Markleaf nur auf oberster Ebene — bewusst, denn Markleaf ordnet über Tags statt über Ordner.
- Eine Notiz zu bearbeiten benennt ihre Datei um. Die Dateinamen der Spiegelung folgen dem Notiztitel; weicht der Dateiname von der Überschrift ab, wird sie beim ersten Speichern in Markleaf umbenannt. Zeigen
[[Links]]in deinem Vault auf den alten Dateinamen, brechen sie.Wenn dein Vault tief verschachtelt oder linklastig ist, richte Markleaf auf einen separaten Ordner und nutze es als mobilen Eingang, aus dem du später zusammenführst, statt als zweiten Editor auf dem Vault selbst.
🛠 Technologie-Stack
Markleaf folgt aktuellen Android-Entwicklungsstandards mit einem modernen, wartbaren Stack.
- UI: Jetpack Compose + Material 3 + Material You Dynamic Color
- Architektur: einfache Schichtentrennung (core / data / domain / feature / ui) + Repository-Muster
- Datenbank: Room – SQLite-basierte lokale Persistenz, FTS4-Virtual-Tables für Volltextsuche
- Markdown-Parser: commonmark-java (CommonMark 0.30 + GFM-Erweiterungen: Tabellen, Durchgestrichen, Task-Lists, Fußnoten, YAML-Frontmatter; die Vorschau stellt einen einzelnen Zeilenumbruch als Zeilenumbruch statt als Leerzeichen dar)
- Asynchron: Kotlin Coroutines & Flow
- Storage Access Framework (SAF) – Ordner-Spiegel-Sync + Bildanhänge
- Bildladen: Coil – F-Droid-freundlich, Apache 2.0
- DataStore Preferences – App-Einstellungen
- Profile Installer 1.4.0 + Macrobenchmark – Messung des Cold-Start-Baseline-Profils (326 ms auf einem TB320FC)
- Tests: JUnit + Robolectric + Roborazzi visuelle Regressionstests (Linux-Goldens, Schwellenwert 0,005)
- CI: GitHub Actions – build und instrumented tests sind Pflichtprüfungen, dazu launch-smoke, record-roborazzi und das signierte Release beim Tag
🏗 Architektur
Markleaf verwendet zur Trennung der Belange und für Testbarkeit folgende Schichtenstruktur.
com.markleaf.notes
├── core # gemeinsame Kernlogik: Markdown-Verarbeitung, Anhänge, Sync
├── data # Room-DB, Entities, Repository-Implementierungen (Data Source)
├── domain # Modelle, Repository-Interfaces (Business-Logik)
├── feature # UI und ViewModels je Screen (Presentation)
│ ├── editor # Editor, Find/Replace, Wikilink-Autovervollständigung, Callouts, Tabellen
│ ├── notes # Notizliste, Quick Switcher, Archiv
│ ├── search # FTS-Volltextsuche
│ ├── tags # Tag-Index
│ ├── trash # Papierkorb / endgültiges Löschen
│ └── settings # Theme, Sync-Ordner, Screenshot-Blockierung usw.
├── navigation # Jetpack Compose Navigation-Konfiguration
└── ui # Theme (Markleaf green / Material You), gemeinsame Komponenten
🚀 Erste Schritte
Installation
[!NOTE] Google-Play-Updates sind derzeit ausgesetzt. Bis eine koreanische Gewerbeanmeldungs-Anforderung für den Einzelentwickler geklärt ist, werden keine neuen Versionen in den Play Store geladen. Die aktuelle Version bekommst du über GitHub Releases. Sobald der F-Droid-Build nachgezogen hat, ist F-Droid der empfohlene Update-Weg. (Wenn du sie bereits aus dem Play Store installiert hast, funktioniert sie weiterhin.)
- F-Droid (für automatische Updates empfohlen): Markleaf on F-Droid – im F-Droid-Client suchen oder über den Link oben installieren. Der Katalog kann später als GitHub veröffentlichen; falls die aktuelle Version noch nicht angezeigt wird, nutze unten GitHub Releases. Es wird derselbe Signaturschlüssel (SHA-256
0be97352…f91a) verwendet, sodass Updates auch nach einem ersten Sideload eines GitHub-APKs nahtlos weiterlaufen. - Direkte APK-Installation: Der GitHub-v2.71.0-Release enthält zwei APKs —
markleaf-v2.71.0.apkentspricht dem F-Droid/Play-Build (kein Auto-Update, keine zusätzliche Berechtigung), undmarkleaf-v2.71.0-sideload.apkfügt eine optionale In-App-Update-Prüfung hinzu (INTERNET,REQUEST_INSTALL_PACKAGES). Wähle für In-App-Updates die Sideload-Variante, lade sie herunter und führe sie auf deinem Android-Gerät aus — beide verwenden denselben Signierschlüssel, ein späterer Wechsel zählt also als normales Update, nicht als Neuinstallation. - Google Play: Markleaf on Google Play – Updates sind ausgesetzt (siehe Hinweis oben). Wenn du die App bereits hast, funktioniert sie weiter; die aktuelle Version gibt es über GitHub Releases oder nach Veröffentlichung über F-Droid.
Aus dem Quellcode bauen
Wenn du selbst bauen oder beitragen möchtest, folge diesen Schritten.
# Repository klonen
git clone https://github.com/jeiel85/markleaf-android.git
# In den Projektordner wechseln
cd markleaf-android
# Bauen und installieren
./gradlew installDebug
Markleafs Fehlerbehebungen beginnen meist als Bericht von jemand anderem. Die Menschen dahinter sind in THANKS.md aufgeführt.
🔒 No-Cloud by design
Markleaf hat kein eigenes Backend, und deine Notizen verlassen das Gerät nie von selbst. Ob deine Daten das Gerät verlassen, ist ganz allein deine Entscheidung.
- ✅ Keine Deklaration von
android.permission.INTERNETin den Store-Builds (F-Droid, Google Play) – sie stellen überhaupt keine Netzwerkanfragen - ✅ Kein eigener Markleaf-Server / -Backend
- ✅ Keine Analyse / Werbung / Tracking / Closed-Source-SDKs
- ✅
android:allowBackup="false"– Markleaf-Daten sind von Androids Auto-Backup / Geräteübertragung ausgeschlossen - ✅ Daten bewegen sich nur über OS-Pfade, wenn du exportierst, teilst, einen externen Link öffnest oder einen SAF-Ordner auswählst
- ✅ Vollständig Open Source, von jedem unter Apache 2.0 prüfbar
Eine einzige Ausnahme. Das APK auf GitHub Releases deklariert zwei Berechtigungen – INTERNET für eine standardmäßig ausgeschaltete, ausdrücklich zu aktivierende Update-Prüfung, und REQUEST_INSTALL_PACKAGES, damit es das gewählte Update installieren kann, nachdem dessen SHA-256 geprüft wurde. Die Builds für F-Droid und Google Play enthalten weder eine dieser Berechtigungen noch den zugehörigen Code – nicht deaktiviert, sondern gar nicht vorhanden. In keinem Build und bei keiner dieser Anfragen werden Notizen, Tags, Anhänge, Metadaten, Kennungen oder Nutzungsdaten gesendet. Die Grenze ist in docs/AGENT_SPEC.md §15.9 festgehalten.
Wie „never leaves your device“ genau funktioniert, ist in der Datenschutzerklärung und der No-Cloud Certification dokumentiert.
🗺 Roadmap
v1.x — MVP
- Grundlegende Markdown-Bearbeitung und Speicherung
- Tag-basierte Filterung und Suche
- Neues App-Icon und Branding
- Live-Markdown-Vorschau und Dunkelmodus
- Performante SQLite-FTS-Suche
- Optimiertes Tablet-2-Spalten-Layout
- Markdown-Export einzelner / aller Notizen
- Stabiles Release v1.0.0
v2.x — Bear-Klasse-Erweiterung (aktuell)
- v2.3 CommonMark-Parser – Callouts, GFM-Durchgestrichen, Task-Lists, Fußnoten, YAML-Frontmatter
- v2.4–2.5 Wikilinks (
[[Title]]) + Autovervollständigung + Backlinks-Panel - v2.6 Bildanhänge + Alt-Text + Lightbox
- v2.7 SAF-Ordner-Spiegel-Sync (Delegation an Drive/Dropbox/Syncthing, weiterhin no INTERNET)
- v2.8 Material-You-Umschalter + Markleaf-Grün-Theme wiederhergestellt
- v2.9 Screenshot-Blockierung, visuelle Regressionstests (Roborazzi) etabliert
- v2.10 Syntax-Highlighting für Codeblöcke (10 Sprachen)
- v2.11 GFM-Tabellenvorschau wiederbelebt
- v2.12 Quick Switcher (Ctrl+K)
- v2.13 Suchen / Ersetzen innerhalb einer Notiz
- v2.14 Fußnoten Referenz ↔ Definition Klick-Sprung
- v2.15 Stabilisierung der F-Droid-Einreichung und No-Cloud-Dokumentation
- v2.16 Homescreen-Widget, biometrische Sperre, Open-Source-Transparenz, smarte Markdown-Formatierung
- v2.17 Öffnen-/Teilen-Import externer
.md/.txt-Dateien, Korrekturen bei Duplikat-Notizen und Tag-Erkennung der Ordnersynchronisierung - v2.18 Ordner-Sync-Dateien nach Notiztitel benannt (Umbenennen folgt) +
.md/.txt-Auswahl - v2.19 Sechs Beispielnotizen beim ersten Start + Titel-Dopplung beim PDF-/Markdown-Export behoben
- v2.20 Tastenkürzel,
#tag-Vervollständigung, Inhaltsverzeichnis, Serifenschrift, 3-Spalten-Layout für Tablets (Tag-Seitenleiste + direktes Filtern) - v2.21 Predictive Back, verfeinerte Übergänge, Listen-/Kartenbewegung, einklappbare Tablet-Tagleiste, Checklisten-Umschaltung
- v2.22
/-Schnelleinfügebefehle mit Touch, externer Tastatur und sechs lokalisierten Menüs - Öffentlicher Google-Play-Start – jeder kann es aus dem Play Store installieren
🌐 Beim Übersetzen helfen
Die meisten Übersetzungen von Markleaf hat noch nie ein Muttersprachler gelesen. Wenn dir in deiner Sprache etwas falsch, holprig oder abgeschnitten vorkommt, kannst du es melden, ohne Code anzufassen.
Du willst die Dateien selbst bearbeiten? CONTRIBUTING.md (Englisch) erklärt, welche es sind und was der Build prüft.
📜 Lizenz
Dieses Projekt ist unter der Apache License 2.0 lizenziert. Einzelheiten findest du in der Datei LICENSE.
Made with ❤️ by Markleaf Team
Ähnliche Projekte entdecken
n8n-io/n8n
Fair-code-Plattform zur Workflow-Automatisierung mit nativen KI-Funktionen. Visuelles Erstellen lässt sich mit eigenem Code kombinieren; die Plattform kann selbst gehostet oder in der Cloud genutzt werden und bietet über 400 Integrationen.
209,939 Sternelanggenius/dify
Agentenbasierte Workflows und RAG-Pipelines mit umfangreicher Unterstützung für KI-Modelle und Tools in einem gemeinsamen Arbeitsbereich erstellen. In der Cloud, in einer VPC oder selbst gehostet bereitstellen, damit Teams vom Prototyp in die Produktion wechseln, ohne den Stack neu aufzubauen.
160,773 Sternemicrosoft/PowerToys
Microsoft PowerToys ist eine Sammlung von Dienstprogrammen, die Produktivität und Anpassungsmöglichkeiten unter Windows steigern
140,755 Sternestablyai/orca
Orca ist der Ort für die Arbeit mit einer Flotte von Agenten (z. B. Grok Bot, Claude Code). Beliebige Coding-Agents lassen sich mit dem eigenen Abonnement ausführen. Verfügbar auf dem Desktop, mobil und als Remote-Runtime.
120,418 Sterne