Skip to main content

Netherrack - Releases

← App details

Nextcloud 35

Netherrack 0.3.3
Release Details
UpdatedOct. 9, 2026, 12:50 p.m.
Changelog

Added

  • @-Erwähnungen (Oberfläche): Autovervollständigung nach @ im Editor über die Nextcloud-Autovervollständigung (Anzeigename, Benutzer-ID, Avatar, auch der eigene Nutzer), die Auswahl fügt @benutzer-id ein; der Autosave pausiert, solange der Cursor in einem unfertigen @…-Wort steht (auch nach Esc). Vorschau zeigt Erwähnungen als Chip mit Anzeigename und Zugriffsstatus (Zugriff / geteilt, aber nicht in Netherrack / kein Zugriff). Neue Ansicht Für mich unterhalb von Aufgaben (Titel, Pfad, Änderungsdatum, Anzahl Erwähnungen, einklappbare Gruppe „Erledigt“, Haken setzt/entfernt done: true, Klick öffnet die Notiz an der ersten Erwähnung). Aufgaben zeigt die Gruppen „Meine Aufgaben“ und „Nicht zugewiesene Aufgaben“ mit Anzahl (#109)
  • @-Erwähnungen (Backend): @benutzer-id (Zeilenanfang/nach Leerzeichen, Satzzeichen abgeschnitten, nur existierende Nutzer, nicht in Code/Frontmatter) im neuen Index netherrack_mentions. Erwähnte Nutzer ohne Zugriff erhalten automatisch eine Freigabe (Lesen + Bearbeiten) unter Netherrack/Geteilt/. Neue Endpunkte GET mentions („Für mich“, erledigt über done: true/status: done), PUT mentions/done, GET mentions/status (Zugriffsstatus) und POST tasks („Meine“ / „Nicht zugewiesene“ Aufgaben); Query-API mit {"task": "assignee"} und task.assignees. Benachrichtigung genau einmal pro Notiz und Nutzer als Aktivität „Erwähnungen in Netherrack“ (Push an, E-Mail aus), ohne Activity-App über Notifications; nicht beim Index-Neuaufbau, nicht bei Selbsterwähnung. Angenommene Freigaben unter dem Notizordner werden sofort indexiert (#108)
  • Notizordner pro Nutzer wählbar statt fest Netherrack/: Einstellungen → Notizordner mit Nextcloud-Ordnerauswahl und „Neuer Ordner …“ (Ort wählen, selbst benennen), Hinweis vor dem Wechsel, dass bisherige Verlinkungen und Dateien eventuell nicht mehr auffindbar sind, und Schalter „Datenbank auf den neuen Ordner ausrichten“ (gespeicherte Pfade umrechnen, Lesezeichen/Layouts übernehmen). Index und Datei-Events folgen dem gewählten Ordner; neuer Endpunkt PUT settings/notes-folder (#106)

Fixed

  • Textmarkierung im Editor und in der Vorschau deutlich sichtbar (heller und dunkler Modus): Der Editor-Inhalt verdeckt die Markierungsebene nicht mehr, die Markierung ist aus der Primärfarbe gemischt und setzt sich von Hintergrund und Text ab, Text bleibt lesbar (Kontrast Markierung/Hintergrund ≥ 1,5:1, Text/Markierung ≥ 4,5:1; E2E-Test selection.spec.js) (#111)
Licenses AGPLv3+
Certificate-----BEGIN CERTIFICATE-----
MIIECDCCAvACAhRUMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYxMDA3MTYwOTE2WhcNMzcwMTEyMTYwOTE2WjAYMRYwFAYD
VQQDDA1uY19uZXRoZXJyYWNrMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKC
AgEAwbgEcG8GjoRA/NI/NPLeeObZXVWSgREPk7PVmELu8Zn83Q48PxaU+Y03BCga
QPH3TySKkGi2CHO0N2lp4wED+4i7StDYjveXzHCJ33iffdNIRICm2vbbcCId2OZ7
x3pQ3gtWOtMq3jFLUn/rMVF6KZS37mR4RjYb7zhe6vx9xxbmbVxyarpxjTnQNhs9
x4mi2FiaYbOngUI74/HpOJFyVtSdiucg8jld6bSMY9ZuQrqfeT6cFJWhTEtBINdO
EkQWSaEHSa0mA0ZNq+b+0wALwCYsKgygFeB4MULenX6oKoJst8X21II62L4efSMF
7YauhW6+WEC78uTHIUGm23ORHa+1t4YK9QqatAyJuQ2zVuaf6VNkuFPESdXDIRqM
Vryy0SAP1o7q0GWjQHWopSZoe/8I3ES64RcAZE3QYbJlMjHWyNuj0fPEswp2Y9a0
dPBC8ERnlT2uZBDlQ+nRkA7JaQ7i2t7jjYXeuS65yhozSRw9SR3GOjZbox+Qik+j
QD2VXAkidq11O5f8cbe1UUVJPwAr/rBn8RztE9u6YD+TXxo89M5qObRY5fB9az70
Eg8Q3icPbtV6XRQALvAPdMIHEWd1WfGY4iLPOsciMq8a81rc66MDEynEW4JH+7q+
eCubJ1z06EHVO8iwMkfWRK/6h7j2AET/US5MSW1uev4cqcECAwEAATANBgkqhkiG
9w0BAQsFAAOCAQEAJ6SXk0fYQ8fOddGE+SjClCO2QXBtLVwyJG88qFfYr0v/T0JN
458M18lUx0cEq5H6Pmb9lhbtc8sFRBBcP0iqGwBzpaE3m7JpCuo9ocmVWObQXHhp
Shdbw3HtDLmmdXJoJYvdHmmDDhZ6BbvL9U8LJDiU5Z6Y0zU4QezWQI/WraO1LkQR
YYQBeBbd4+u6FXLlHQINLhkJKPmkBd/ITx707y2hM/D0qiNdIzseJIecA6VY2Cxv
kfmJ97AA8CdO467AwyPLfPw1YSktjDo8vnSPOm1R2oXn9jDGaxKtoEg93FnfhWw9
BDXmBDz9YFdhfd7YReuXa5Me7iIV926KIZoacA==
-----END CERTIFICATE-----
SignatureoWH8+CdkU7xPmtGeim/zuGWi+smohyzy7zmMoyFG2gubmpgaHUaWSj0IEiwRVbai
3SXl9UfScdmwQ4BbcKmX7phCfOdy6q9rf3EJqHLbO6e2K4NJSpRz+ukqbY1cab8n
Ty8EVrtZTiudf792rftQD6IySfnP+sKlqT9T4R0JLxHMxjkzy0Urus6OEIDCnhHW
ysJ7HXtyE+PSkXXiyMoEgjAOxZmDdNLRF5vlcZw9L68B2m7dKdQeD0P5dKAnbPUY
Ni1aWihCpQgg36w6O8J0mkujV+FtLzKj28iqbHG7UGDrYLJzpZsOH70+Y3K0tJrB
KTlNAnSUjTRluRqQgowhqnf1xzRMhlKdu+5YGgv8CMx5Hypt4CYZk3d76U9u9T41
z/2j7CS6Cg+41oFC54LOctoMJjI8ralyUSvBtDie7eBsuhMnd6Oyv0XpSE+krIUl
Zo9ztQ63EsZuFdYaF6WwK7NqcLphknRDXB2Vb20hS2TYdcdD1olTSn6gUD1U1PGb
VCNHZG8/Iu2ULzU2oxObuwWp+5uk2SdQ5ACegJlMrxET7u6C7TuOEeoRoO5YnmLr
N6gvnLYDYZ5y0comGezbgnmpUsNdN7KpKUpzw86r+AJbep+0WRWyCkAZyhMPBona
aLzcFhIHnUmtfqRRG0sCVI8M/h/4b5U2Y9pwII0Ldws=
Signature digestsha512
Dependencies
Required Nextcloud versions >=31.0.0,<36.0.0
Minimum Integer bits32
PHP>=8.1.0
Netherrack 0.3.1
Release Details
UpdatedOct. 8, 2026, 2:10 p.m.
Changelog

Changed

  • info.xml: ausführliche App-Store-Beschreibung (Features, Doku-Links) im Release-Archiv
Licenses AGPLv3+
Certificate-----BEGIN CERTIFICATE-----
MIIECDCCAvACAhRUMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYxMDA3MTYwOTE2WhcNMzcwMTEyMTYwOTE2WjAYMRYwFAYD
VQQDDA1uY19uZXRoZXJyYWNrMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKC
AgEAwbgEcG8GjoRA/NI/NPLeeObZXVWSgREPk7PVmELu8Zn83Q48PxaU+Y03BCga
QPH3TySKkGi2CHO0N2lp4wED+4i7StDYjveXzHCJ33iffdNIRICm2vbbcCId2OZ7
x3pQ3gtWOtMq3jFLUn/rMVF6KZS37mR4RjYb7zhe6vx9xxbmbVxyarpxjTnQNhs9
x4mi2FiaYbOngUI74/HpOJFyVtSdiucg8jld6bSMY9ZuQrqfeT6cFJWhTEtBINdO
EkQWSaEHSa0mA0ZNq+b+0wALwCYsKgygFeB4MULenX6oKoJst8X21II62L4efSMF
7YauhW6+WEC78uTHIUGm23ORHa+1t4YK9QqatAyJuQ2zVuaf6VNkuFPESdXDIRqM
Vryy0SAP1o7q0GWjQHWopSZoe/8I3ES64RcAZE3QYbJlMjHWyNuj0fPEswp2Y9a0
dPBC8ERnlT2uZBDlQ+nRkA7JaQ7i2t7jjYXeuS65yhozSRw9SR3GOjZbox+Qik+j
QD2VXAkidq11O5f8cbe1UUVJPwAr/rBn8RztE9u6YD+TXxo89M5qObRY5fB9az70
Eg8Q3icPbtV6XRQALvAPdMIHEWd1WfGY4iLPOsciMq8a81rc66MDEynEW4JH+7q+
eCubJ1z06EHVO8iwMkfWRK/6h7j2AET/US5MSW1uev4cqcECAwEAATANBgkqhkiG
9w0BAQsFAAOCAQEAJ6SXk0fYQ8fOddGE+SjClCO2QXBtLVwyJG88qFfYr0v/T0JN
458M18lUx0cEq5H6Pmb9lhbtc8sFRBBcP0iqGwBzpaE3m7JpCuo9ocmVWObQXHhp
Shdbw3HtDLmmdXJoJYvdHmmDDhZ6BbvL9U8LJDiU5Z6Y0zU4QezWQI/WraO1LkQR
YYQBeBbd4+u6FXLlHQINLhkJKPmkBd/ITx707y2hM/D0qiNdIzseJIecA6VY2Cxv
kfmJ97AA8CdO467AwyPLfPw1YSktjDo8vnSPOm1R2oXn9jDGaxKtoEg93FnfhWw9
BDXmBDz9YFdhfd7YReuXa5Me7iIV926KIZoacA==
-----END CERTIFICATE-----
SignatureSh9YclTMi3XkFiNnA6G2GEcF0WBE0xNpwvftffsMMJ2jUI0HIsDJQiW/hdHhT+Yw
my1BK2TZq/45BcxgzLLTPUpUOKRo7fvLXM/TSrMrWpJiCyUoa1G9pBWG4twFHstV
7naFWbMF5X1gb5EjOAS9CdtZ9Qx4VNMQNNVZ8z2OQCeqw/QsBvS0JWPvvv9zj0Fq
XFVzvNUNaYwHa+eXPXG0AMO+bBbnnYjfkJB9XEPtksyzNxa7LRPfYV8neJUgI4ZV
oX1/Lr8DWz50mA5weyr56I9cuELB00XwU8wMOGdhI8VvRjEIjVyT/T+9JIrRsxur
4MnXcv6orOkFccp5b8qIS++D0FrYzAzRTj6/7ld7B0FxEt0cGuItrRt/vUQohu3D
HEgAXWocPs9CiF0GQAEwUmCWOTxOvbPwrNd39I7tjHpbV47kaKSL0cX4LLn5dOfT
WV33besJKt7NKmsAGa7ZDf0+gNRS6wYLFUMK9MWYGWwRImwOWIfnjv1P1SFjHkIJ
70G3RxxiByt2vb+TNaE8isgudlP6OuNsR058v1G1JZZ1asQ2D4KELGJTV1om/JII
mwYIjBQwq3K5M+CRpClU2EpDvs0FYI87+IqUNn1W5rSJ8dq7qL6mOsENBkifgpy/
ptOjd3lc3vmkYvmyXZ29eJoHRjTrHB/GAicoCwqvjhw=
Signature digestsha512
Dependencies
Required Nextcloud versions >=31.0.0,<36.0.0
Minimum Integer bits32
PHP>=8.1.0
Netherrack 0.3.0
Release Details
UpdatedOct. 8, 2026, 2:03 p.m.
Changelog

Added

  • Veröffentlichen: Notizen und Ordner per Linkfreigabe als öffentliche Webseite (/apps/nc_netherrack/s/{token}) mit gerendertem Markdown, Notizliste, Wiki-Links und Einbettungen nur innerhalb der Freigabe; Links nach außen erscheinen als Text. Passwort/Ablaufdatum der Freigabe gelten; kein Zugriff auf den Index. Aktion „Veröffentlichen …“ im Dateibaum (#59)
  • Canvas: .canvas-Dateien im offenen Format JSON Canvas 1.0 mit Text-, Notiz-/Datei-, Link- und Gruppenkarten, Verbindungen mit Beschriftung, Farben, Verschieben/Größe ändern, Zoom, Rückgängig und Autosave; unbekannte Felder bleiben erhalten. „Neue Notiz → Canvas“. [[Ordner/Notiz]] wird jetzt auch über den Pfad aufgelöst (#57)
  • Sprachnotizen: Transkripte erhalten Frontmatter (type: voicenote, recorded, duration, audio, language, tags: [voicenote]) und betten die Aufnahme abspielbar ein (#58)
  • Dateien einbetten: ![[bild.png|300]], PDF, Audio, Video und relative Markdown-Bilder in der Vorschau; Einfügen aus der Zwischenablage bzw. Drag & Drop lädt in den Anhang-Ordner hoch (Einstellung); Umbenennen eines Anhangs über die App schreibt Einbettungen um (#50)
  • Bases: mehrere Ansichten pro .base (views, Umschalten per Reiter) und neue Ansichtstypen Karten (mit optionalem Titelbild), Kanban (Drag & Drop ändert die Spalten-Property im Frontmatter) und Kalender (Monat/Woche nach Datums-Property) (#53)
  • Mehrere Bereiche: Reiter für geöffnete Notizen, zweiter Bereich nebeneinander mit unabhängigem Speichern (Dateibaum-Menü, Strg/Cmd-Klick in der Vorschau, Strg/Cmd+Umschalt-Klick im Editor), wählbare Panels in der rechten Seitenleiste (Backlinks, ausgehende Links, Tags, Gliederung) und benannte Layouts; das letzte Layout wird beim Start wiederhergestellt (#56)
  • Lesezeichen: Bereich in der Seitenleiste für Notizen, Ordner, Überschriften, Blöcke, gespeicherte Suchen, Tags, Bases und Links, mit verschachtelten Gruppen, Umbenennen und Drag & Drop. Stern-Menü in der Editor-Kopfzeile, „Suche speichern“. Gespeichert in Netherrack/.netherrack/bookmarks.json; Lesezeichen folgen Umbenennungen über die Datei-ID (#55)
  • Suche mit Gewichtung: Titel > Überschrift > Tag/Property > Pfad > Inhalt, Häufigkeit als Nebenkriterium; durchsucht jetzt auch Tags und Property-Werte. Treffer zeigen die Fundstelle und springen zur Überschrift bzw. Textstelle – in der Seitenleiste und in der globalen Nextcloud-Suche (?path=&line=) (#64)
  • Bases: Ansichten über Notizen als .base-Datei (YAML, Filter im Format der Query-API) mit Tabellen- und Listenansicht, Spalten, Sortierung per Spaltenkopf, optionaler Gruppierung und direkt bearbeitbaren Property-Zellen (Schreib-Service). „Neue Notiz → Base“, Öffnen im Dateibaum, „Definition bearbeiten“; Endpunkte GET/POST bases (#52)
  • Aufgaben: - [ ]/- [x] aus allen Notizen im neuen Index netherrack_tasks (mit Einrückung/Elternaufgabe und Inline-Feldern due::, priority::). Ansicht „Aufgaben“ mit Filtern nach Status, Fälligkeit, Priorität, Tag und Ordner; Abhaken in Übersicht und Vorschau über den Schreib-Service (PUT notes/tasks); Query-API mit "source": "tasks" (#54)
  • Vorlagen: Jede Notiz im Vorlagen-Ordner (Standard Vorlagen/, pro Nutzer einstellbar) ist eine Vorlage. „Neue Notiz → Aus Vorlage …“ legt im aktuellen Ordner an, „Vorlage einfügen“ fügt am Cursor ein und ergänzt fehlende Frontmatter-Felder; Variablen {{title}}, {{date}}, {{time}}, {{date:FORMAT}}, {{folder}}. Optionale Vorlage für neue Tagesnotizen. Vorlagen werden nicht indexiert. Neuer Einstellungsdialog in der Navigation (#51)
  • Query-API: POST query bzw. NetherrackService::query() fragt Notizen nach Ordnern, Tags, Properties (typgerecht: Zahl, Datum, Bool, Liste), Datei-Feldern und Volltext ab – mit UND/ODER/NICHT-Gruppen, Sortierung nach mehreren Schlüsseln, Auswahl der Properties und Paginierung; ausgeführt als SQL gegen den Index. Das Abfrageformat (Version 1) ist in API.md beschrieben (#63)
  • Properties-Editor: Über dem Editor ein Tag-Feld mit Vorschlägen und ein Properties-Symbol, das einen Dialog zum Anlegen, Ändern, Umbenennen und Entfernen von Properties öffnet – je ein Eingabefeld pro Typ mit Tooltip und Vorschlägen für Keys und Werte (#72); ohne Frontmatter wird der ----Block angelegt. Grundlage ist ein gemeinsamer Schreib-Service (NoteWriter), der nur die betroffenen Zeilen ändert und Konflikte über etag erkennt (HTTP 409); neue Endpunkte PUT/DELETE notes/properties, POST notes/properties/rename, GET properties/values, GET notes/blocks/candidates, POST notes/blocks. „Neue Block-ID“ in der Autovervollständigung nach [[Notiz#^ (#46)
  • Konflikterkennung beim Speichern: Wurde die Notiz seit dem Öffnen anderswo geändert, fragt der Editor (aktuelle Version laden oder überschreiben) statt still zu überschreiben (#46)
  • Einbettungen: ![[Notiz]], ![[Notiz#Überschrift]] und ![[Notiz#^id]] zeigen Notiz, Abschnitt bzw. Block in der Vorschau – abgesetzt, mit Link „Öffnen“, bis 3 Ebenen tief, mit Schutz vor Schleifen. Inhalte kommen gebündelt über den neuen Endpunkt GET embeds bzw. NetherrackService::getEmbeds() (#49)
  • Block-IDs: ^id am Ende eines Absatzes/Listeneintrags (oder allein in der Zeile danach) macht ihn adressierbar; [[Notiz#^id]] springt zum Block und hebt ihn hervor, nach [[Notiz#^ werden Blöcke vorgeschlagen, die Vorschau blendet die Marker aus. Block-IDs stehen im Index netherrack_blocks (Typ block); Backlinks liefern und zeigen die verlinkten Abschnitte/Blöcke (anchors) (#48)
  • Abschnitts-Links [[Notiz#Überschrift]] (auch [[Notiz#Überschrift|Text]]) springen zur Überschrift – per Klick in der Vorschau oder Strg/Cmd-Klick im Editor; fehlt die Überschrift, erscheint ein Hinweis. Nach [[Notiz# werden die Überschriften der Zielnotiz vorgeschlagen. Neuer Überschriften-Index netherrack_blocks mit Endpunkt GET notes/blocks bzw. NetherrackService::getBlocks() (#47)
  • Properties: Alle Frontmatter-Felder werden typisiert indiziert (Text, Zahl, Checkbox, Datum, Datum+Uhrzeit, Liste, Tags) in der neuen Tabelle netherrack_properties; neue Endpunkte GET properties und GET notes/properties bzw. NetherrackService::getPropertyKeys()/getProperties(). Der YAML-Leser versteht jetzt auch Kommentare, Anführungszeichen mit Escapes, verschachtelte Maps, Listen ohne Einrückung und mehrzeilige Texte. Ein einmaliger Hintergrundjob indiziert bestehende Notizen nach dem Update (#45)
  • Geteilte Notizen und Group Folders: Änderungen, Umbenennen und Löschen durch einen beliebigen Nutzer aktualisieren den Index aller Nutzer, bei denen die Notiz unter Netherrack/ liegt (Eigentümer und Empfänger). Aufgehobene Freigaben verschwinden aus dem Index des Empfängers. Damit entfällt die bisherige Einschränkung, dass der Index des Eigentümers erst bei dessen nächstem Speichern aktuell wurde (#62)
  • Graph: Beim Überfahren eines Punkts zeigt ein Tooltip den Dateinamen (Pfad) der Notiz – hilfreich, wenn sich Beschriftungen überlappen (#38)

Changed

  • Layouts werden in den Einstellungen (Abschnitt „Layouts“) verwaltet statt über ein eigenes Menü unten in der Navigation: gespeicherte Layouts mit Reiterzahl und zweitem Bereich anzeigen, öffnen, umbenennen, durch das aktuelle Layout ersetzen und löschen (mit Rückfrage)
  • Neue Transkripte tragen das Tag voicenote statt voice-note; bestehende Notizen bleiben unverändert (#58)
  • Ordner und Dateien, deren Name mit einem Punkt beginnt, werden im Dateibaum nicht mehr angezeigt
  • „Neue Notiz“ ist immer ein Menü (Markdown, Base, ggf. Aus Vorlage und Sprachdatei)
  • „Neue Notiz“ legt immer im aktuell geöffneten Ordner an (auch in tieferen Ebenen und im Hauptordner) statt eine Auswahl der Ordner der ersten Ebene anzubieten; das Menü enthält nur noch „Markdown“ und bei aktiver Spracherkennung „Sprachdatei“ (#43)
  • Sprachaufnahmen merken sich den Ordner, in dem die Aufnahme gestartet wurde, und das Transkript wird dort angelegt; die Zuordnung über das erste gesprochene Wort entfällt. POST voice nimmt dafür das optionale Feld folder an (#43)
  • Eingaben und Rückfragen (neue Notiz, neuer Ordner, Umbenennen, Löschen, ungespeicherte Änderungen) nutzen Nextcloud-Dialoge statt der Browser-Dialoge prompt/confirm
  • Vorschau-Schalter ist der Nextcloud-Schalter (NcCheckboxRadioSwitch) statt einer Eigenentwicklung

Fixed

  • „Lesezeichen“ steht in der Navigation mit Icon und Text bündig unter „Heute“, „Graph“ und „Aufgaben“
  • Der Vorschau-Schalter in der Editor-Kopfzeile zeigt beim Überfahren mit der Maus einen Tooltip, ob die Vorschau ein- oder ausgeschaltet ist (vorher erschien gar kein Tooltip) (#65)
  • ![[datei.png]] legt beim Speichern keine leere Notiz datei.png.md mehr an
  • Umbenennen einer Datei, die keine Notiz ist, über die App hängt nicht mehr .md an
  • Speichern schlägt nicht mehr mit „Speichern fehlgeschlagen“ fehl, wenn die Datei gerade gleichzeitig gelesen wird (kurze Wiederholung bei gesperrter Datei)
  • Wiki-Links auf den Titel einer Notiz (statt auf den Dateinamen) gelten in Vorschau und „Ausgehende Links“ als vorhanden und öffnen die Notiz, statt eine neue anzulegen – wie bei Backlinks und Graph. Bei gleichen Namen gewinnt überall die Notiz mit dem kleinsten Pfad
  • Buttons und Menüs zeigen wieder ihre vorgesehene Darstellung (primär/tertiär/Fehler): @nextcloud/vue 9 erwartet dafür variant statt type
  • Beim Löschen eines Nutzers werden auch sein Notiz-Index und seine Einträge im Transkriptions-Log entfernt
  • Transkription: whisper-cli wird ohne eingetragenen Pfad wie in der Statusanzeige im PATH gesucht (vorher meldete der Status „verfügbar“, der Job übersprang aber alles); fehlt ffmpeg, überspringt der Job mit Warnung
  • Dateinamen von Sprachaufnahmen und die heutige Tagesnotiz richten sich nach der Zeitzone des Nutzers statt nach der Serverzeit
  • Transkript-Notizen werden in der Sprache des Nutzers beschriftet (vorher immer Deutsch)
  • Hilfsmarker der Transkription in der App-Konfiguration werden aufgeräumt, sobald die Aufnahme nicht mehr aussteht
  • Transkript-Notizen aus dem Hintergrundjob werden indexiert (Suche, Tags, Backlinks, Graph); ohne angemeldeten Nutzer löst Nextcloud keine Datei-Events aus. Bereits vorhandene Transkripte nimmt occ netherrack:index:rebuild auf
  • Sprachaufnahme in Chrome, Edge und Safari: Die App-Seite gibt das Mikrofon frei (Nextcloud sperrt es standardmäßig per Feature-Policy) und erlaubt das Vorhören der Aufnahme (blob: als Medienquelle); bisher funktionierte die Aufnahme nur in Firefox
Licenses AGPLv3+
Certificate-----BEGIN CERTIFICATE-----
MIIECDCCAvACAhRUMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYxMDA3MTYwOTE2WhcNMzcwMTEyMTYwOTE2WjAYMRYwFAYD
VQQDDA1uY19uZXRoZXJyYWNrMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKC
AgEAwbgEcG8GjoRA/NI/NPLeeObZXVWSgREPk7PVmELu8Zn83Q48PxaU+Y03BCga
QPH3TySKkGi2CHO0N2lp4wED+4i7StDYjveXzHCJ33iffdNIRICm2vbbcCId2OZ7
x3pQ3gtWOtMq3jFLUn/rMVF6KZS37mR4RjYb7zhe6vx9xxbmbVxyarpxjTnQNhs9
x4mi2FiaYbOngUI74/HpOJFyVtSdiucg8jld6bSMY9ZuQrqfeT6cFJWhTEtBINdO
EkQWSaEHSa0mA0ZNq+b+0wALwCYsKgygFeB4MULenX6oKoJst8X21II62L4efSMF
7YauhW6+WEC78uTHIUGm23ORHa+1t4YK9QqatAyJuQ2zVuaf6VNkuFPESdXDIRqM
Vryy0SAP1o7q0GWjQHWopSZoe/8I3ES64RcAZE3QYbJlMjHWyNuj0fPEswp2Y9a0
dPBC8ERnlT2uZBDlQ+nRkA7JaQ7i2t7jjYXeuS65yhozSRw9SR3GOjZbox+Qik+j
QD2VXAkidq11O5f8cbe1UUVJPwAr/rBn8RztE9u6YD+TXxo89M5qObRY5fB9az70
Eg8Q3icPbtV6XRQALvAPdMIHEWd1WfGY4iLPOsciMq8a81rc66MDEynEW4JH+7q+
eCubJ1z06EHVO8iwMkfWRK/6h7j2AET/US5MSW1uev4cqcECAwEAATANBgkqhkiG
9w0BAQsFAAOCAQEAJ6SXk0fYQ8fOddGE+SjClCO2QXBtLVwyJG88qFfYr0v/T0JN
458M18lUx0cEq5H6Pmb9lhbtc8sFRBBcP0iqGwBzpaE3m7JpCuo9ocmVWObQXHhp
Shdbw3HtDLmmdXJoJYvdHmmDDhZ6BbvL9U8LJDiU5Z6Y0zU4QezWQI/WraO1LkQR
YYQBeBbd4+u6FXLlHQINLhkJKPmkBd/ITx707y2hM/D0qiNdIzseJIecA6VY2Cxv
kfmJ97AA8CdO467AwyPLfPw1YSktjDo8vnSPOm1R2oXn9jDGaxKtoEg93FnfhWw9
BDXmBDz9YFdhfd7YReuXa5Me7iIV926KIZoacA==
-----END CERTIFICATE-----
SignatureuO0x8bUd3TM62tGqqYNJnpQKOg58Hx0g72dtX9Z9t18kKhSgD0v8huIdya2Jm2z7
9nrhO1+MOQJuH8yP3XccEVt25crVuH1jwWHm9gbru8Fpe7Nox8vLX+h1f3dZwOdk
Gvgm98ypnhItsiM2yVRC5zvby4w2NmQ7iaZTOvPHBoFtJiPKTCI+r4uq5tzAnPpc
94MBcyx7+KghSygaRxbsSqUEr6eBeUnNs87cS4VpC4PLyeJsKRktqsZQo+p8POaK
EsvZ0+m9ysor6j84or6+f2uyaCproqPZVHUrZgQlC7mbLbVd0Bfet+Cl2DWI+Z9q
IIbiZjjtQbCH8EDyUIj/nmMkWhcOweDgnR81mhTcyyRxbd+yUFguQV/VYP/uesfq
jKlnjvsJ6DrVaSsa5EmcVjclf7OOJggSGb+C2v9P3VJm5mnAqWCCjWQItf4X+WKI
lzm8jtE729pSsIw6Q7gL64BzrAnz1P9OAUnP1E3t0r4PU9TLaxa7z3hnafUs/R5r
NYwvPQ3EIAlovJwPyUEvmN8mNKQHSrGkfj3zYYOS/5V0Ire/XG5mZo728q0Cw0NA
qZEipd7hjce/1HCdOOsAarOXig7LryQ7tBmY2TGgSsu+3mxd4ZxVZo6juI1wVY7M
rBvUPAasIWI9FEi9v50NFzqIcA3p/zdNyj/PGO7kc/I=
Signature digestsha512
Dependencies
Required Nextcloud versions >=31.0.0,<36.0.0
Minimum Integer bits32
PHP>=8.1.0

Nextcloud 34

Netherrack 0.3.3
Release Details
UpdatedOct. 9, 2026, 12:50 p.m.
Changelog

Added

  • @-Erwähnungen (Oberfläche): Autovervollständigung nach @ im Editor über die Nextcloud-Autovervollständigung (Anzeigename, Benutzer-ID, Avatar, auch der eigene Nutzer), die Auswahl fügt @benutzer-id ein; der Autosave pausiert, solange der Cursor in einem unfertigen @…-Wort steht (auch nach Esc). Vorschau zeigt Erwähnungen als Chip mit Anzeigename und Zugriffsstatus (Zugriff / geteilt, aber nicht in Netherrack / kein Zugriff). Neue Ansicht Für mich unterhalb von Aufgaben (Titel, Pfad, Änderungsdatum, Anzahl Erwähnungen, einklappbare Gruppe „Erledigt“, Haken setzt/entfernt done: true, Klick öffnet die Notiz an der ersten Erwähnung). Aufgaben zeigt die Gruppen „Meine Aufgaben“ und „Nicht zugewiesene Aufgaben“ mit Anzahl (#109)
  • @-Erwähnungen (Backend): @benutzer-id (Zeilenanfang/nach Leerzeichen, Satzzeichen abgeschnitten, nur existierende Nutzer, nicht in Code/Frontmatter) im neuen Index netherrack_mentions. Erwähnte Nutzer ohne Zugriff erhalten automatisch eine Freigabe (Lesen + Bearbeiten) unter Netherrack/Geteilt/. Neue Endpunkte GET mentions („Für mich“, erledigt über done: true/status: done), PUT mentions/done, GET mentions/status (Zugriffsstatus) und POST tasks („Meine“ / „Nicht zugewiesene“ Aufgaben); Query-API mit {"task": "assignee"} und task.assignees. Benachrichtigung genau einmal pro Notiz und Nutzer als Aktivität „Erwähnungen in Netherrack“ (Push an, E-Mail aus), ohne Activity-App über Notifications; nicht beim Index-Neuaufbau, nicht bei Selbsterwähnung. Angenommene Freigaben unter dem Notizordner werden sofort indexiert (#108)
  • Notizordner pro Nutzer wählbar statt fest Netherrack/: Einstellungen → Notizordner mit Nextcloud-Ordnerauswahl und „Neuer Ordner …“ (Ort wählen, selbst benennen), Hinweis vor dem Wechsel, dass bisherige Verlinkungen und Dateien eventuell nicht mehr auffindbar sind, und Schalter „Datenbank auf den neuen Ordner ausrichten“ (gespeicherte Pfade umrechnen, Lesezeichen/Layouts übernehmen). Index und Datei-Events folgen dem gewählten Ordner; neuer Endpunkt PUT settings/notes-folder (#106)

Fixed

  • Textmarkierung im Editor und in der Vorschau deutlich sichtbar (heller und dunkler Modus): Der Editor-Inhalt verdeckt die Markierungsebene nicht mehr, die Markierung ist aus der Primärfarbe gemischt und setzt sich von Hintergrund und Text ab, Text bleibt lesbar (Kontrast Markierung/Hintergrund ≥ 1,5:1, Text/Markierung ≥ 4,5:1; E2E-Test selection.spec.js) (#111)
Licenses AGPLv3+
Certificate-----BEGIN CERTIFICATE-----
MIIECDCCAvACAhRUMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYxMDA3MTYwOTE2WhcNMzcwMTEyMTYwOTE2WjAYMRYwFAYD
VQQDDA1uY19uZXRoZXJyYWNrMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKC
AgEAwbgEcG8GjoRA/NI/NPLeeObZXVWSgREPk7PVmELu8Zn83Q48PxaU+Y03BCga
QPH3TySKkGi2CHO0N2lp4wED+4i7StDYjveXzHCJ33iffdNIRICm2vbbcCId2OZ7
x3pQ3gtWOtMq3jFLUn/rMVF6KZS37mR4RjYb7zhe6vx9xxbmbVxyarpxjTnQNhs9
x4mi2FiaYbOngUI74/HpOJFyVtSdiucg8jld6bSMY9ZuQrqfeT6cFJWhTEtBINdO
EkQWSaEHSa0mA0ZNq+b+0wALwCYsKgygFeB4MULenX6oKoJst8X21II62L4efSMF
7YauhW6+WEC78uTHIUGm23ORHa+1t4YK9QqatAyJuQ2zVuaf6VNkuFPESdXDIRqM
Vryy0SAP1o7q0GWjQHWopSZoe/8I3ES64RcAZE3QYbJlMjHWyNuj0fPEswp2Y9a0
dPBC8ERnlT2uZBDlQ+nRkA7JaQ7i2t7jjYXeuS65yhozSRw9SR3GOjZbox+Qik+j
QD2VXAkidq11O5f8cbe1UUVJPwAr/rBn8RztE9u6YD+TXxo89M5qObRY5fB9az70
Eg8Q3icPbtV6XRQALvAPdMIHEWd1WfGY4iLPOsciMq8a81rc66MDEynEW4JH+7q+
eCubJ1z06EHVO8iwMkfWRK/6h7j2AET/US5MSW1uev4cqcECAwEAATANBgkqhkiG
9w0BAQsFAAOCAQEAJ6SXk0fYQ8fOddGE+SjClCO2QXBtLVwyJG88qFfYr0v/T0JN
458M18lUx0cEq5H6Pmb9lhbtc8sFRBBcP0iqGwBzpaE3m7JpCuo9ocmVWObQXHhp
Shdbw3HtDLmmdXJoJYvdHmmDDhZ6BbvL9U8LJDiU5Z6Y0zU4QezWQI/WraO1LkQR
YYQBeBbd4+u6FXLlHQINLhkJKPmkBd/ITx707y2hM/D0qiNdIzseJIecA6VY2Cxv
kfmJ97AA8CdO467AwyPLfPw1YSktjDo8vnSPOm1R2oXn9jDGaxKtoEg93FnfhWw9
BDXmBDz9YFdhfd7YReuXa5Me7iIV926KIZoacA==
-----END CERTIFICATE-----
SignatureoWH8+CdkU7xPmtGeim/zuGWi+smohyzy7zmMoyFG2gubmpgaHUaWSj0IEiwRVbai
3SXl9UfScdmwQ4BbcKmX7phCfOdy6q9rf3EJqHLbO6e2K4NJSpRz+ukqbY1cab8n
Ty8EVrtZTiudf792rftQD6IySfnP+sKlqT9T4R0JLxHMxjkzy0Urus6OEIDCnhHW
ysJ7HXtyE+PSkXXiyMoEgjAOxZmDdNLRF5vlcZw9L68B2m7dKdQeD0P5dKAnbPUY
Ni1aWihCpQgg36w6O8J0mkujV+FtLzKj28iqbHG7UGDrYLJzpZsOH70+Y3K0tJrB
KTlNAnSUjTRluRqQgowhqnf1xzRMhlKdu+5YGgv8CMx5Hypt4CYZk3d76U9u9T41
z/2j7CS6Cg+41oFC54LOctoMJjI8ralyUSvBtDie7eBsuhMnd6Oyv0XpSE+krIUl
Zo9ztQ63EsZuFdYaF6WwK7NqcLphknRDXB2Vb20hS2TYdcdD1olTSn6gUD1U1PGb
VCNHZG8/Iu2ULzU2oxObuwWp+5uk2SdQ5ACegJlMrxET7u6C7TuOEeoRoO5YnmLr
N6gvnLYDYZ5y0comGezbgnmpUsNdN7KpKUpzw86r+AJbep+0WRWyCkAZyhMPBona
aLzcFhIHnUmtfqRRG0sCVI8M/h/4b5U2Y9pwII0Ldws=
Signature digestsha512
Dependencies
Required Nextcloud versions >=31.0.0,<36.0.0
Minimum Integer bits32
PHP>=8.1.0
Netherrack 0.3.1
Release Details
UpdatedOct. 8, 2026, 2:10 p.m.
Changelog

Changed

  • info.xml: ausführliche App-Store-Beschreibung (Features, Doku-Links) im Release-Archiv
Licenses AGPLv3+
Certificate-----BEGIN CERTIFICATE-----
MIIECDCCAvACAhRUMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYxMDA3MTYwOTE2WhcNMzcwMTEyMTYwOTE2WjAYMRYwFAYD
VQQDDA1uY19uZXRoZXJyYWNrMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKC
AgEAwbgEcG8GjoRA/NI/NPLeeObZXVWSgREPk7PVmELu8Zn83Q48PxaU+Y03BCga
QPH3TySKkGi2CHO0N2lp4wED+4i7StDYjveXzHCJ33iffdNIRICm2vbbcCId2OZ7
x3pQ3gtWOtMq3jFLUn/rMVF6KZS37mR4RjYb7zhe6vx9xxbmbVxyarpxjTnQNhs9
x4mi2FiaYbOngUI74/HpOJFyVtSdiucg8jld6bSMY9ZuQrqfeT6cFJWhTEtBINdO
EkQWSaEHSa0mA0ZNq+b+0wALwCYsKgygFeB4MULenX6oKoJst8X21II62L4efSMF
7YauhW6+WEC78uTHIUGm23ORHa+1t4YK9QqatAyJuQ2zVuaf6VNkuFPESdXDIRqM
Vryy0SAP1o7q0GWjQHWopSZoe/8I3ES64RcAZE3QYbJlMjHWyNuj0fPEswp2Y9a0
dPBC8ERnlT2uZBDlQ+nRkA7JaQ7i2t7jjYXeuS65yhozSRw9SR3GOjZbox+Qik+j
QD2VXAkidq11O5f8cbe1UUVJPwAr/rBn8RztE9u6YD+TXxo89M5qObRY5fB9az70
Eg8Q3icPbtV6XRQALvAPdMIHEWd1WfGY4iLPOsciMq8a81rc66MDEynEW4JH+7q+
eCubJ1z06EHVO8iwMkfWRK/6h7j2AET/US5MSW1uev4cqcECAwEAATANBgkqhkiG
9w0BAQsFAAOCAQEAJ6SXk0fYQ8fOddGE+SjClCO2QXBtLVwyJG88qFfYr0v/T0JN
458M18lUx0cEq5H6Pmb9lhbtc8sFRBBcP0iqGwBzpaE3m7JpCuo9ocmVWObQXHhp
Shdbw3HtDLmmdXJoJYvdHmmDDhZ6BbvL9U8LJDiU5Z6Y0zU4QezWQI/WraO1LkQR
YYQBeBbd4+u6FXLlHQINLhkJKPmkBd/ITx707y2hM/D0qiNdIzseJIecA6VY2Cxv
kfmJ97AA8CdO467AwyPLfPw1YSktjDo8vnSPOm1R2oXn9jDGaxKtoEg93FnfhWw9
BDXmBDz9YFdhfd7YReuXa5Me7iIV926KIZoacA==
-----END CERTIFICATE-----
SignatureSh9YclTMi3XkFiNnA6G2GEcF0WBE0xNpwvftffsMMJ2jUI0HIsDJQiW/hdHhT+Yw
my1BK2TZq/45BcxgzLLTPUpUOKRo7fvLXM/TSrMrWpJiCyUoa1G9pBWG4twFHstV
7naFWbMF5X1gb5EjOAS9CdtZ9Qx4VNMQNNVZ8z2OQCeqw/QsBvS0JWPvvv9zj0Fq
XFVzvNUNaYwHa+eXPXG0AMO+bBbnnYjfkJB9XEPtksyzNxa7LRPfYV8neJUgI4ZV
oX1/Lr8DWz50mA5weyr56I9cuELB00XwU8wMOGdhI8VvRjEIjVyT/T+9JIrRsxur
4MnXcv6orOkFccp5b8qIS++D0FrYzAzRTj6/7ld7B0FxEt0cGuItrRt/vUQohu3D
HEgAXWocPs9CiF0GQAEwUmCWOTxOvbPwrNd39I7tjHpbV47kaKSL0cX4LLn5dOfT
WV33besJKt7NKmsAGa7ZDf0+gNRS6wYLFUMK9MWYGWwRImwOWIfnjv1P1SFjHkIJ
70G3RxxiByt2vb+TNaE8isgudlP6OuNsR058v1G1JZZ1asQ2D4KELGJTV1om/JII
mwYIjBQwq3K5M+CRpClU2EpDvs0FYI87+IqUNn1W5rSJ8dq7qL6mOsENBkifgpy/
ptOjd3lc3vmkYvmyXZ29eJoHRjTrHB/GAicoCwqvjhw=
Signature digestsha512
Dependencies
Required Nextcloud versions >=31.0.0,<36.0.0
Minimum Integer bits32
PHP>=8.1.0
Netherrack 0.3.0
Release Details
UpdatedOct. 8, 2026, 2:03 p.m.
Changelog

Added

  • Veröffentlichen: Notizen und Ordner per Linkfreigabe als öffentliche Webseite (/apps/nc_netherrack/s/{token}) mit gerendertem Markdown, Notizliste, Wiki-Links und Einbettungen nur innerhalb der Freigabe; Links nach außen erscheinen als Text. Passwort/Ablaufdatum der Freigabe gelten; kein Zugriff auf den Index. Aktion „Veröffentlichen …“ im Dateibaum (#59)
  • Canvas: .canvas-Dateien im offenen Format JSON Canvas 1.0 mit Text-, Notiz-/Datei-, Link- und Gruppenkarten, Verbindungen mit Beschriftung, Farben, Verschieben/Größe ändern, Zoom, Rückgängig und Autosave; unbekannte Felder bleiben erhalten. „Neue Notiz → Canvas“. [[Ordner/Notiz]] wird jetzt auch über den Pfad aufgelöst (#57)
  • Sprachnotizen: Transkripte erhalten Frontmatter (type: voicenote, recorded, duration, audio, language, tags: [voicenote]) und betten die Aufnahme abspielbar ein (#58)
  • Dateien einbetten: ![[bild.png|300]], PDF, Audio, Video und relative Markdown-Bilder in der Vorschau; Einfügen aus der Zwischenablage bzw. Drag & Drop lädt in den Anhang-Ordner hoch (Einstellung); Umbenennen eines Anhangs über die App schreibt Einbettungen um (#50)
  • Bases: mehrere Ansichten pro .base (views, Umschalten per Reiter) und neue Ansichtstypen Karten (mit optionalem Titelbild), Kanban (Drag & Drop ändert die Spalten-Property im Frontmatter) und Kalender (Monat/Woche nach Datums-Property) (#53)
  • Mehrere Bereiche: Reiter für geöffnete Notizen, zweiter Bereich nebeneinander mit unabhängigem Speichern (Dateibaum-Menü, Strg/Cmd-Klick in der Vorschau, Strg/Cmd+Umschalt-Klick im Editor), wählbare Panels in der rechten Seitenleiste (Backlinks, ausgehende Links, Tags, Gliederung) und benannte Layouts; das letzte Layout wird beim Start wiederhergestellt (#56)
  • Lesezeichen: Bereich in der Seitenleiste für Notizen, Ordner, Überschriften, Blöcke, gespeicherte Suchen, Tags, Bases und Links, mit verschachtelten Gruppen, Umbenennen und Drag & Drop. Stern-Menü in der Editor-Kopfzeile, „Suche speichern“. Gespeichert in Netherrack/.netherrack/bookmarks.json; Lesezeichen folgen Umbenennungen über die Datei-ID (#55)
  • Suche mit Gewichtung: Titel > Überschrift > Tag/Property > Pfad > Inhalt, Häufigkeit als Nebenkriterium; durchsucht jetzt auch Tags und Property-Werte. Treffer zeigen die Fundstelle und springen zur Überschrift bzw. Textstelle – in der Seitenleiste und in der globalen Nextcloud-Suche (?path=&line=) (#64)
  • Bases: Ansichten über Notizen als .base-Datei (YAML, Filter im Format der Query-API) mit Tabellen- und Listenansicht, Spalten, Sortierung per Spaltenkopf, optionaler Gruppierung und direkt bearbeitbaren Property-Zellen (Schreib-Service). „Neue Notiz → Base“, Öffnen im Dateibaum, „Definition bearbeiten“; Endpunkte GET/POST bases (#52)
  • Aufgaben: - [ ]/- [x] aus allen Notizen im neuen Index netherrack_tasks (mit Einrückung/Elternaufgabe und Inline-Feldern due::, priority::). Ansicht „Aufgaben“ mit Filtern nach Status, Fälligkeit, Priorität, Tag und Ordner; Abhaken in Übersicht und Vorschau über den Schreib-Service (PUT notes/tasks); Query-API mit "source": "tasks" (#54)
  • Vorlagen: Jede Notiz im Vorlagen-Ordner (Standard Vorlagen/, pro Nutzer einstellbar) ist eine Vorlage. „Neue Notiz → Aus Vorlage …“ legt im aktuellen Ordner an, „Vorlage einfügen“ fügt am Cursor ein und ergänzt fehlende Frontmatter-Felder; Variablen {{title}}, {{date}}, {{time}}, {{date:FORMAT}}, {{folder}}. Optionale Vorlage für neue Tagesnotizen. Vorlagen werden nicht indexiert. Neuer Einstellungsdialog in der Navigation (#51)
  • Query-API: POST query bzw. NetherrackService::query() fragt Notizen nach Ordnern, Tags, Properties (typgerecht: Zahl, Datum, Bool, Liste), Datei-Feldern und Volltext ab – mit UND/ODER/NICHT-Gruppen, Sortierung nach mehreren Schlüsseln, Auswahl der Properties und Paginierung; ausgeführt als SQL gegen den Index. Das Abfrageformat (Version 1) ist in API.md beschrieben (#63)
  • Properties-Editor: Über dem Editor ein Tag-Feld mit Vorschlägen und ein Properties-Symbol, das einen Dialog zum Anlegen, Ändern, Umbenennen und Entfernen von Properties öffnet – je ein Eingabefeld pro Typ mit Tooltip und Vorschlägen für Keys und Werte (#72); ohne Frontmatter wird der ----Block angelegt. Grundlage ist ein gemeinsamer Schreib-Service (NoteWriter), der nur die betroffenen Zeilen ändert und Konflikte über etag erkennt (HTTP 409); neue Endpunkte PUT/DELETE notes/properties, POST notes/properties/rename, GET properties/values, GET notes/blocks/candidates, POST notes/blocks. „Neue Block-ID“ in der Autovervollständigung nach [[Notiz#^ (#46)
  • Konflikterkennung beim Speichern: Wurde die Notiz seit dem Öffnen anderswo geändert, fragt der Editor (aktuelle Version laden oder überschreiben) statt still zu überschreiben (#46)
  • Einbettungen: ![[Notiz]], ![[Notiz#Überschrift]] und ![[Notiz#^id]] zeigen Notiz, Abschnitt bzw. Block in der Vorschau – abgesetzt, mit Link „Öffnen“, bis 3 Ebenen tief, mit Schutz vor Schleifen. Inhalte kommen gebündelt über den neuen Endpunkt GET embeds bzw. NetherrackService::getEmbeds() (#49)
  • Block-IDs: ^id am Ende eines Absatzes/Listeneintrags (oder allein in der Zeile danach) macht ihn adressierbar; [[Notiz#^id]] springt zum Block und hebt ihn hervor, nach [[Notiz#^ werden Blöcke vorgeschlagen, die Vorschau blendet die Marker aus. Block-IDs stehen im Index netherrack_blocks (Typ block); Backlinks liefern und zeigen die verlinkten Abschnitte/Blöcke (anchors) (#48)
  • Abschnitts-Links [[Notiz#Überschrift]] (auch [[Notiz#Überschrift|Text]]) springen zur Überschrift – per Klick in der Vorschau oder Strg/Cmd-Klick im Editor; fehlt die Überschrift, erscheint ein Hinweis. Nach [[Notiz# werden die Überschriften der Zielnotiz vorgeschlagen. Neuer Überschriften-Index netherrack_blocks mit Endpunkt GET notes/blocks bzw. NetherrackService::getBlocks() (#47)
  • Properties: Alle Frontmatter-Felder werden typisiert indiziert (Text, Zahl, Checkbox, Datum, Datum+Uhrzeit, Liste, Tags) in der neuen Tabelle netherrack_properties; neue Endpunkte GET properties und GET notes/properties bzw. NetherrackService::getPropertyKeys()/getProperties(). Der YAML-Leser versteht jetzt auch Kommentare, Anführungszeichen mit Escapes, verschachtelte Maps, Listen ohne Einrückung und mehrzeilige Texte. Ein einmaliger Hintergrundjob indiziert bestehende Notizen nach dem Update (#45)
  • Geteilte Notizen und Group Folders: Änderungen, Umbenennen und Löschen durch einen beliebigen Nutzer aktualisieren den Index aller Nutzer, bei denen die Notiz unter Netherrack/ liegt (Eigentümer und Empfänger). Aufgehobene Freigaben verschwinden aus dem Index des Empfängers. Damit entfällt die bisherige Einschränkung, dass der Index des Eigentümers erst bei dessen nächstem Speichern aktuell wurde (#62)
  • Graph: Beim Überfahren eines Punkts zeigt ein Tooltip den Dateinamen (Pfad) der Notiz – hilfreich, wenn sich Beschriftungen überlappen (#38)

Changed

  • Layouts werden in den Einstellungen (Abschnitt „Layouts“) verwaltet statt über ein eigenes Menü unten in der Navigation: gespeicherte Layouts mit Reiterzahl und zweitem Bereich anzeigen, öffnen, umbenennen, durch das aktuelle Layout ersetzen und löschen (mit Rückfrage)
  • Neue Transkripte tragen das Tag voicenote statt voice-note; bestehende Notizen bleiben unverändert (#58)
  • Ordner und Dateien, deren Name mit einem Punkt beginnt, werden im Dateibaum nicht mehr angezeigt
  • „Neue Notiz“ ist immer ein Menü (Markdown, Base, ggf. Aus Vorlage und Sprachdatei)
  • „Neue Notiz“ legt immer im aktuell geöffneten Ordner an (auch in tieferen Ebenen und im Hauptordner) statt eine Auswahl der Ordner der ersten Ebene anzubieten; das Menü enthält nur noch „Markdown“ und bei aktiver Spracherkennung „Sprachdatei“ (#43)
  • Sprachaufnahmen merken sich den Ordner, in dem die Aufnahme gestartet wurde, und das Transkript wird dort angelegt; die Zuordnung über das erste gesprochene Wort entfällt. POST voice nimmt dafür das optionale Feld folder an (#43)
  • Eingaben und Rückfragen (neue Notiz, neuer Ordner, Umbenennen, Löschen, ungespeicherte Änderungen) nutzen Nextcloud-Dialoge statt der Browser-Dialoge prompt/confirm
  • Vorschau-Schalter ist der Nextcloud-Schalter (NcCheckboxRadioSwitch) statt einer Eigenentwicklung

Fixed

  • „Lesezeichen“ steht in der Navigation mit Icon und Text bündig unter „Heute“, „Graph“ und „Aufgaben“
  • Der Vorschau-Schalter in der Editor-Kopfzeile zeigt beim Überfahren mit der Maus einen Tooltip, ob die Vorschau ein- oder ausgeschaltet ist (vorher erschien gar kein Tooltip) (#65)
  • ![[datei.png]] legt beim Speichern keine leere Notiz datei.png.md mehr an
  • Umbenennen einer Datei, die keine Notiz ist, über die App hängt nicht mehr .md an
  • Speichern schlägt nicht mehr mit „Speichern fehlgeschlagen“ fehl, wenn die Datei gerade gleichzeitig gelesen wird (kurze Wiederholung bei gesperrter Datei)
  • Wiki-Links auf den Titel einer Notiz (statt auf den Dateinamen) gelten in Vorschau und „Ausgehende Links“ als vorhanden und öffnen die Notiz, statt eine neue anzulegen – wie bei Backlinks und Graph. Bei gleichen Namen gewinnt überall die Notiz mit dem kleinsten Pfad
  • Buttons und Menüs zeigen wieder ihre vorgesehene Darstellung (primär/tertiär/Fehler): @nextcloud/vue 9 erwartet dafür variant statt type
  • Beim Löschen eines Nutzers werden auch sein Notiz-Index und seine Einträge im Transkriptions-Log entfernt
  • Transkription: whisper-cli wird ohne eingetragenen Pfad wie in der Statusanzeige im PATH gesucht (vorher meldete der Status „verfügbar“, der Job übersprang aber alles); fehlt ffmpeg, überspringt der Job mit Warnung
  • Dateinamen von Sprachaufnahmen und die heutige Tagesnotiz richten sich nach der Zeitzone des Nutzers statt nach der Serverzeit
  • Transkript-Notizen werden in der Sprache des Nutzers beschriftet (vorher immer Deutsch)
  • Hilfsmarker der Transkription in der App-Konfiguration werden aufgeräumt, sobald die Aufnahme nicht mehr aussteht
  • Transkript-Notizen aus dem Hintergrundjob werden indexiert (Suche, Tags, Backlinks, Graph); ohne angemeldeten Nutzer löst Nextcloud keine Datei-Events aus. Bereits vorhandene Transkripte nimmt occ netherrack:index:rebuild auf
  • Sprachaufnahme in Chrome, Edge und Safari: Die App-Seite gibt das Mikrofon frei (Nextcloud sperrt es standardmäßig per Feature-Policy) und erlaubt das Vorhören der Aufnahme (blob: als Medienquelle); bisher funktionierte die Aufnahme nur in Firefox
Licenses AGPLv3+
Certificate-----BEGIN CERTIFICATE-----
MIIECDCCAvACAhRUMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYxMDA3MTYwOTE2WhcNMzcwMTEyMTYwOTE2WjAYMRYwFAYD
VQQDDA1uY19uZXRoZXJyYWNrMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKC
AgEAwbgEcG8GjoRA/NI/NPLeeObZXVWSgREPk7PVmELu8Zn83Q48PxaU+Y03BCga
QPH3TySKkGi2CHO0N2lp4wED+4i7StDYjveXzHCJ33iffdNIRICm2vbbcCId2OZ7
x3pQ3gtWOtMq3jFLUn/rMVF6KZS37mR4RjYb7zhe6vx9xxbmbVxyarpxjTnQNhs9
x4mi2FiaYbOngUI74/HpOJFyVtSdiucg8jld6bSMY9ZuQrqfeT6cFJWhTEtBINdO
EkQWSaEHSa0mA0ZNq+b+0wALwCYsKgygFeB4MULenX6oKoJst8X21II62L4efSMF
7YauhW6+WEC78uTHIUGm23ORHa+1t4YK9QqatAyJuQ2zVuaf6VNkuFPESdXDIRqM
Vryy0SAP1o7q0GWjQHWopSZoe/8I3ES64RcAZE3QYbJlMjHWyNuj0fPEswp2Y9a0
dPBC8ERnlT2uZBDlQ+nRkA7JaQ7i2t7jjYXeuS65yhozSRw9SR3GOjZbox+Qik+j
QD2VXAkidq11O5f8cbe1UUVJPwAr/rBn8RztE9u6YD+TXxo89M5qObRY5fB9az70
Eg8Q3icPbtV6XRQALvAPdMIHEWd1WfGY4iLPOsciMq8a81rc66MDEynEW4JH+7q+
eCubJ1z06EHVO8iwMkfWRK/6h7j2AET/US5MSW1uev4cqcECAwEAATANBgkqhkiG
9w0BAQsFAAOCAQEAJ6SXk0fYQ8fOddGE+SjClCO2QXBtLVwyJG88qFfYr0v/T0JN
458M18lUx0cEq5H6Pmb9lhbtc8sFRBBcP0iqGwBzpaE3m7JpCuo9ocmVWObQXHhp
Shdbw3HtDLmmdXJoJYvdHmmDDhZ6BbvL9U8LJDiU5Z6Y0zU4QezWQI/WraO1LkQR
YYQBeBbd4+u6FXLlHQINLhkJKPmkBd/ITx707y2hM/D0qiNdIzseJIecA6VY2Cxv
kfmJ97AA8CdO467AwyPLfPw1YSktjDo8vnSPOm1R2oXn9jDGaxKtoEg93FnfhWw9
BDXmBDz9YFdhfd7YReuXa5Me7iIV926KIZoacA==
-----END CERTIFICATE-----
SignatureuO0x8bUd3TM62tGqqYNJnpQKOg58Hx0g72dtX9Z9t18kKhSgD0v8huIdya2Jm2z7
9nrhO1+MOQJuH8yP3XccEVt25crVuH1jwWHm9gbru8Fpe7Nox8vLX+h1f3dZwOdk
Gvgm98ypnhItsiM2yVRC5zvby4w2NmQ7iaZTOvPHBoFtJiPKTCI+r4uq5tzAnPpc
94MBcyx7+KghSygaRxbsSqUEr6eBeUnNs87cS4VpC4PLyeJsKRktqsZQo+p8POaK
EsvZ0+m9ysor6j84or6+f2uyaCproqPZVHUrZgQlC7mbLbVd0Bfet+Cl2DWI+Z9q
IIbiZjjtQbCH8EDyUIj/nmMkWhcOweDgnR81mhTcyyRxbd+yUFguQV/VYP/uesfq
jKlnjvsJ6DrVaSsa5EmcVjclf7OOJggSGb+C2v9P3VJm5mnAqWCCjWQItf4X+WKI
lzm8jtE729pSsIw6Q7gL64BzrAnz1P9OAUnP1E3t0r4PU9TLaxa7z3hnafUs/R5r
NYwvPQ3EIAlovJwPyUEvmN8mNKQHSrGkfj3zYYOS/5V0Ire/XG5mZo728q0Cw0NA
qZEipd7hjce/1HCdOOsAarOXig7LryQ7tBmY2TGgSsu+3mxd4ZxVZo6juI1wVY7M
rBvUPAasIWI9FEi9v50NFzqIcA3p/zdNyj/PGO7kc/I=
Signature digestsha512
Dependencies
Required Nextcloud versions >=31.0.0,<36.0.0
Minimum Integer bits32
PHP>=8.1.0

Nextcloud 33

Netherrack 0.3.3
Release Details
UpdatedOct. 9, 2026, 12:50 p.m.
Changelog

Added

  • @-Erwähnungen (Oberfläche): Autovervollständigung nach @ im Editor über die Nextcloud-Autovervollständigung (Anzeigename, Benutzer-ID, Avatar, auch der eigene Nutzer), die Auswahl fügt @benutzer-id ein; der Autosave pausiert, solange der Cursor in einem unfertigen @…-Wort steht (auch nach Esc). Vorschau zeigt Erwähnungen als Chip mit Anzeigename und Zugriffsstatus (Zugriff / geteilt, aber nicht in Netherrack / kein Zugriff). Neue Ansicht Für mich unterhalb von Aufgaben (Titel, Pfad, Änderungsdatum, Anzahl Erwähnungen, einklappbare Gruppe „Erledigt“, Haken setzt/entfernt done: true, Klick öffnet die Notiz an der ersten Erwähnung). Aufgaben zeigt die Gruppen „Meine Aufgaben“ und „Nicht zugewiesene Aufgaben“ mit Anzahl (#109)
  • @-Erwähnungen (Backend): @benutzer-id (Zeilenanfang/nach Leerzeichen, Satzzeichen abgeschnitten, nur existierende Nutzer, nicht in Code/Frontmatter) im neuen Index netherrack_mentions. Erwähnte Nutzer ohne Zugriff erhalten automatisch eine Freigabe (Lesen + Bearbeiten) unter Netherrack/Geteilt/. Neue Endpunkte GET mentions („Für mich“, erledigt über done: true/status: done), PUT mentions/done, GET mentions/status (Zugriffsstatus) und POST tasks („Meine“ / „Nicht zugewiesene“ Aufgaben); Query-API mit {"task": "assignee"} und task.assignees. Benachrichtigung genau einmal pro Notiz und Nutzer als Aktivität „Erwähnungen in Netherrack“ (Push an, E-Mail aus), ohne Activity-App über Notifications; nicht beim Index-Neuaufbau, nicht bei Selbsterwähnung. Angenommene Freigaben unter dem Notizordner werden sofort indexiert (#108)
  • Notizordner pro Nutzer wählbar statt fest Netherrack/: Einstellungen → Notizordner mit Nextcloud-Ordnerauswahl und „Neuer Ordner …“ (Ort wählen, selbst benennen), Hinweis vor dem Wechsel, dass bisherige Verlinkungen und Dateien eventuell nicht mehr auffindbar sind, und Schalter „Datenbank auf den neuen Ordner ausrichten“ (gespeicherte Pfade umrechnen, Lesezeichen/Layouts übernehmen). Index und Datei-Events folgen dem gewählten Ordner; neuer Endpunkt PUT settings/notes-folder (#106)

Fixed

  • Textmarkierung im Editor und in der Vorschau deutlich sichtbar (heller und dunkler Modus): Der Editor-Inhalt verdeckt die Markierungsebene nicht mehr, die Markierung ist aus der Primärfarbe gemischt und setzt sich von Hintergrund und Text ab, Text bleibt lesbar (Kontrast Markierung/Hintergrund ≥ 1,5:1, Text/Markierung ≥ 4,5:1; E2E-Test selection.spec.js) (#111)
Licenses AGPLv3+
Certificate-----BEGIN CERTIFICATE-----
MIIECDCCAvACAhRUMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYxMDA3MTYwOTE2WhcNMzcwMTEyMTYwOTE2WjAYMRYwFAYD
VQQDDA1uY19uZXRoZXJyYWNrMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKC
AgEAwbgEcG8GjoRA/NI/NPLeeObZXVWSgREPk7PVmELu8Zn83Q48PxaU+Y03BCga
QPH3TySKkGi2CHO0N2lp4wED+4i7StDYjveXzHCJ33iffdNIRICm2vbbcCId2OZ7
x3pQ3gtWOtMq3jFLUn/rMVF6KZS37mR4RjYb7zhe6vx9xxbmbVxyarpxjTnQNhs9
x4mi2FiaYbOngUI74/HpOJFyVtSdiucg8jld6bSMY9ZuQrqfeT6cFJWhTEtBINdO
EkQWSaEHSa0mA0ZNq+b+0wALwCYsKgygFeB4MULenX6oKoJst8X21II62L4efSMF
7YauhW6+WEC78uTHIUGm23ORHa+1t4YK9QqatAyJuQ2zVuaf6VNkuFPESdXDIRqM
Vryy0SAP1o7q0GWjQHWopSZoe/8I3ES64RcAZE3QYbJlMjHWyNuj0fPEswp2Y9a0
dPBC8ERnlT2uZBDlQ+nRkA7JaQ7i2t7jjYXeuS65yhozSRw9SR3GOjZbox+Qik+j
QD2VXAkidq11O5f8cbe1UUVJPwAr/rBn8RztE9u6YD+TXxo89M5qObRY5fB9az70
Eg8Q3icPbtV6XRQALvAPdMIHEWd1WfGY4iLPOsciMq8a81rc66MDEynEW4JH+7q+
eCubJ1z06EHVO8iwMkfWRK/6h7j2AET/US5MSW1uev4cqcECAwEAATANBgkqhkiG
9w0BAQsFAAOCAQEAJ6SXk0fYQ8fOddGE+SjClCO2QXBtLVwyJG88qFfYr0v/T0JN
458M18lUx0cEq5H6Pmb9lhbtc8sFRBBcP0iqGwBzpaE3m7JpCuo9ocmVWObQXHhp
Shdbw3HtDLmmdXJoJYvdHmmDDhZ6BbvL9U8LJDiU5Z6Y0zU4QezWQI/WraO1LkQR
YYQBeBbd4+u6FXLlHQINLhkJKPmkBd/ITx707y2hM/D0qiNdIzseJIecA6VY2Cxv
kfmJ97AA8CdO467AwyPLfPw1YSktjDo8vnSPOm1R2oXn9jDGaxKtoEg93FnfhWw9
BDXmBDz9YFdhfd7YReuXa5Me7iIV926KIZoacA==
-----END CERTIFICATE-----
SignatureoWH8+CdkU7xPmtGeim/zuGWi+smohyzy7zmMoyFG2gubmpgaHUaWSj0IEiwRVbai
3SXl9UfScdmwQ4BbcKmX7phCfOdy6q9rf3EJqHLbO6e2K4NJSpRz+ukqbY1cab8n
Ty8EVrtZTiudf792rftQD6IySfnP+sKlqT9T4R0JLxHMxjkzy0Urus6OEIDCnhHW
ysJ7HXtyE+PSkXXiyMoEgjAOxZmDdNLRF5vlcZw9L68B2m7dKdQeD0P5dKAnbPUY
Ni1aWihCpQgg36w6O8J0mkujV+FtLzKj28iqbHG7UGDrYLJzpZsOH70+Y3K0tJrB
KTlNAnSUjTRluRqQgowhqnf1xzRMhlKdu+5YGgv8CMx5Hypt4CYZk3d76U9u9T41
z/2j7CS6Cg+41oFC54LOctoMJjI8ralyUSvBtDie7eBsuhMnd6Oyv0XpSE+krIUl
Zo9ztQ63EsZuFdYaF6WwK7NqcLphknRDXB2Vb20hS2TYdcdD1olTSn6gUD1U1PGb
VCNHZG8/Iu2ULzU2oxObuwWp+5uk2SdQ5ACegJlMrxET7u6C7TuOEeoRoO5YnmLr
N6gvnLYDYZ5y0comGezbgnmpUsNdN7KpKUpzw86r+AJbep+0WRWyCkAZyhMPBona
aLzcFhIHnUmtfqRRG0sCVI8M/h/4b5U2Y9pwII0Ldws=
Signature digestsha512
Dependencies
Required Nextcloud versions >=31.0.0,<36.0.0
Minimum Integer bits32
PHP>=8.1.0
Netherrack 0.3.1
Release Details
UpdatedOct. 8, 2026, 2:10 p.m.
Changelog

Changed

  • info.xml: ausführliche App-Store-Beschreibung (Features, Doku-Links) im Release-Archiv
Licenses AGPLv3+
Certificate-----BEGIN CERTIFICATE-----
MIIECDCCAvACAhRUMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYxMDA3MTYwOTE2WhcNMzcwMTEyMTYwOTE2WjAYMRYwFAYD
VQQDDA1uY19uZXRoZXJyYWNrMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKC
AgEAwbgEcG8GjoRA/NI/NPLeeObZXVWSgREPk7PVmELu8Zn83Q48PxaU+Y03BCga
QPH3TySKkGi2CHO0N2lp4wED+4i7StDYjveXzHCJ33iffdNIRICm2vbbcCId2OZ7
x3pQ3gtWOtMq3jFLUn/rMVF6KZS37mR4RjYb7zhe6vx9xxbmbVxyarpxjTnQNhs9
x4mi2FiaYbOngUI74/HpOJFyVtSdiucg8jld6bSMY9ZuQrqfeT6cFJWhTEtBINdO
EkQWSaEHSa0mA0ZNq+b+0wALwCYsKgygFeB4MULenX6oKoJst8X21II62L4efSMF
7YauhW6+WEC78uTHIUGm23ORHa+1t4YK9QqatAyJuQ2zVuaf6VNkuFPESdXDIRqM
Vryy0SAP1o7q0GWjQHWopSZoe/8I3ES64RcAZE3QYbJlMjHWyNuj0fPEswp2Y9a0
dPBC8ERnlT2uZBDlQ+nRkA7JaQ7i2t7jjYXeuS65yhozSRw9SR3GOjZbox+Qik+j
QD2VXAkidq11O5f8cbe1UUVJPwAr/rBn8RztE9u6YD+TXxo89M5qObRY5fB9az70
Eg8Q3icPbtV6XRQALvAPdMIHEWd1WfGY4iLPOsciMq8a81rc66MDEynEW4JH+7q+
eCubJ1z06EHVO8iwMkfWRK/6h7j2AET/US5MSW1uev4cqcECAwEAATANBgkqhkiG
9w0BAQsFAAOCAQEAJ6SXk0fYQ8fOddGE+SjClCO2QXBtLVwyJG88qFfYr0v/T0JN
458M18lUx0cEq5H6Pmb9lhbtc8sFRBBcP0iqGwBzpaE3m7JpCuo9ocmVWObQXHhp
Shdbw3HtDLmmdXJoJYvdHmmDDhZ6BbvL9U8LJDiU5Z6Y0zU4QezWQI/WraO1LkQR
YYQBeBbd4+u6FXLlHQINLhkJKPmkBd/ITx707y2hM/D0qiNdIzseJIecA6VY2Cxv
kfmJ97AA8CdO467AwyPLfPw1YSktjDo8vnSPOm1R2oXn9jDGaxKtoEg93FnfhWw9
BDXmBDz9YFdhfd7YReuXa5Me7iIV926KIZoacA==
-----END CERTIFICATE-----
SignatureSh9YclTMi3XkFiNnA6G2GEcF0WBE0xNpwvftffsMMJ2jUI0HIsDJQiW/hdHhT+Yw
my1BK2TZq/45BcxgzLLTPUpUOKRo7fvLXM/TSrMrWpJiCyUoa1G9pBWG4twFHstV
7naFWbMF5X1gb5EjOAS9CdtZ9Qx4VNMQNNVZ8z2OQCeqw/QsBvS0JWPvvv9zj0Fq
XFVzvNUNaYwHa+eXPXG0AMO+bBbnnYjfkJB9XEPtksyzNxa7LRPfYV8neJUgI4ZV
oX1/Lr8DWz50mA5weyr56I9cuELB00XwU8wMOGdhI8VvRjEIjVyT/T+9JIrRsxur
4MnXcv6orOkFccp5b8qIS++D0FrYzAzRTj6/7ld7B0FxEt0cGuItrRt/vUQohu3D
HEgAXWocPs9CiF0GQAEwUmCWOTxOvbPwrNd39I7tjHpbV47kaKSL0cX4LLn5dOfT
WV33besJKt7NKmsAGa7ZDf0+gNRS6wYLFUMK9MWYGWwRImwOWIfnjv1P1SFjHkIJ
70G3RxxiByt2vb+TNaE8isgudlP6OuNsR058v1G1JZZ1asQ2D4KELGJTV1om/JII
mwYIjBQwq3K5M+CRpClU2EpDvs0FYI87+IqUNn1W5rSJ8dq7qL6mOsENBkifgpy/
ptOjd3lc3vmkYvmyXZ29eJoHRjTrHB/GAicoCwqvjhw=
Signature digestsha512
Dependencies
Required Nextcloud versions >=31.0.0,<36.0.0
Minimum Integer bits32
PHP>=8.1.0
Netherrack 0.3.0
Release Details
UpdatedOct. 8, 2026, 2:03 p.m.
Changelog

Added

  • Veröffentlichen: Notizen und Ordner per Linkfreigabe als öffentliche Webseite (/apps/nc_netherrack/s/{token}) mit gerendertem Markdown, Notizliste, Wiki-Links und Einbettungen nur innerhalb der Freigabe; Links nach außen erscheinen als Text. Passwort/Ablaufdatum der Freigabe gelten; kein Zugriff auf den Index. Aktion „Veröffentlichen …“ im Dateibaum (#59)
  • Canvas: .canvas-Dateien im offenen Format JSON Canvas 1.0 mit Text-, Notiz-/Datei-, Link- und Gruppenkarten, Verbindungen mit Beschriftung, Farben, Verschieben/Größe ändern, Zoom, Rückgängig und Autosave; unbekannte Felder bleiben erhalten. „Neue Notiz → Canvas“. [[Ordner/Notiz]] wird jetzt auch über den Pfad aufgelöst (#57)
  • Sprachnotizen: Transkripte erhalten Frontmatter (type: voicenote, recorded, duration, audio, language, tags: [voicenote]) und betten die Aufnahme abspielbar ein (#58)
  • Dateien einbetten: ![[bild.png|300]], PDF, Audio, Video und relative Markdown-Bilder in der Vorschau; Einfügen aus der Zwischenablage bzw. Drag & Drop lädt in den Anhang-Ordner hoch (Einstellung); Umbenennen eines Anhangs über die App schreibt Einbettungen um (#50)
  • Bases: mehrere Ansichten pro .base (views, Umschalten per Reiter) und neue Ansichtstypen Karten (mit optionalem Titelbild), Kanban (Drag & Drop ändert die Spalten-Property im Frontmatter) und Kalender (Monat/Woche nach Datums-Property) (#53)
  • Mehrere Bereiche: Reiter für geöffnete Notizen, zweiter Bereich nebeneinander mit unabhängigem Speichern (Dateibaum-Menü, Strg/Cmd-Klick in der Vorschau, Strg/Cmd+Umschalt-Klick im Editor), wählbare Panels in der rechten Seitenleiste (Backlinks, ausgehende Links, Tags, Gliederung) und benannte Layouts; das letzte Layout wird beim Start wiederhergestellt (#56)
  • Lesezeichen: Bereich in der Seitenleiste für Notizen, Ordner, Überschriften, Blöcke, gespeicherte Suchen, Tags, Bases und Links, mit verschachtelten Gruppen, Umbenennen und Drag & Drop. Stern-Menü in der Editor-Kopfzeile, „Suche speichern“. Gespeichert in Netherrack/.netherrack/bookmarks.json; Lesezeichen folgen Umbenennungen über die Datei-ID (#55)
  • Suche mit Gewichtung: Titel > Überschrift > Tag/Property > Pfad > Inhalt, Häufigkeit als Nebenkriterium; durchsucht jetzt auch Tags und Property-Werte. Treffer zeigen die Fundstelle und springen zur Überschrift bzw. Textstelle – in der Seitenleiste und in der globalen Nextcloud-Suche (?path=&line=) (#64)
  • Bases: Ansichten über Notizen als .base-Datei (YAML, Filter im Format der Query-API) mit Tabellen- und Listenansicht, Spalten, Sortierung per Spaltenkopf, optionaler Gruppierung und direkt bearbeitbaren Property-Zellen (Schreib-Service). „Neue Notiz → Base“, Öffnen im Dateibaum, „Definition bearbeiten“; Endpunkte GET/POST bases (#52)
  • Aufgaben: - [ ]/- [x] aus allen Notizen im neuen Index netherrack_tasks (mit Einrückung/Elternaufgabe und Inline-Feldern due::, priority::). Ansicht „Aufgaben“ mit Filtern nach Status, Fälligkeit, Priorität, Tag und Ordner; Abhaken in Übersicht und Vorschau über den Schreib-Service (PUT notes/tasks); Query-API mit "source": "tasks" (#54)
  • Vorlagen: Jede Notiz im Vorlagen-Ordner (Standard Vorlagen/, pro Nutzer einstellbar) ist eine Vorlage. „Neue Notiz → Aus Vorlage …“ legt im aktuellen Ordner an, „Vorlage einfügen“ fügt am Cursor ein und ergänzt fehlende Frontmatter-Felder; Variablen {{title}}, {{date}}, {{time}}, {{date:FORMAT}}, {{folder}}. Optionale Vorlage für neue Tagesnotizen. Vorlagen werden nicht indexiert. Neuer Einstellungsdialog in der Navigation (#51)
  • Query-API: POST query bzw. NetherrackService::query() fragt Notizen nach Ordnern, Tags, Properties (typgerecht: Zahl, Datum, Bool, Liste), Datei-Feldern und Volltext ab – mit UND/ODER/NICHT-Gruppen, Sortierung nach mehreren Schlüsseln, Auswahl der Properties und Paginierung; ausgeführt als SQL gegen den Index. Das Abfrageformat (Version 1) ist in API.md beschrieben (#63)
  • Properties-Editor: Über dem Editor ein Tag-Feld mit Vorschlägen und ein Properties-Symbol, das einen Dialog zum Anlegen, Ändern, Umbenennen und Entfernen von Properties öffnet – je ein Eingabefeld pro Typ mit Tooltip und Vorschlägen für Keys und Werte (#72); ohne Frontmatter wird der ----Block angelegt. Grundlage ist ein gemeinsamer Schreib-Service (NoteWriter), der nur die betroffenen Zeilen ändert und Konflikte über etag erkennt (HTTP 409); neue Endpunkte PUT/DELETE notes/properties, POST notes/properties/rename, GET properties/values, GET notes/blocks/candidates, POST notes/blocks. „Neue Block-ID“ in der Autovervollständigung nach [[Notiz#^ (#46)
  • Konflikterkennung beim Speichern: Wurde die Notiz seit dem Öffnen anderswo geändert, fragt der Editor (aktuelle Version laden oder überschreiben) statt still zu überschreiben (#46)
  • Einbettungen: ![[Notiz]], ![[Notiz#Überschrift]] und ![[Notiz#^id]] zeigen Notiz, Abschnitt bzw. Block in der Vorschau – abgesetzt, mit Link „Öffnen“, bis 3 Ebenen tief, mit Schutz vor Schleifen. Inhalte kommen gebündelt über den neuen Endpunkt GET embeds bzw. NetherrackService::getEmbeds() (#49)
  • Block-IDs: ^id am Ende eines Absatzes/Listeneintrags (oder allein in der Zeile danach) macht ihn adressierbar; [[Notiz#^id]] springt zum Block und hebt ihn hervor, nach [[Notiz#^ werden Blöcke vorgeschlagen, die Vorschau blendet die Marker aus. Block-IDs stehen im Index netherrack_blocks (Typ block); Backlinks liefern und zeigen die verlinkten Abschnitte/Blöcke (anchors) (#48)
  • Abschnitts-Links [[Notiz#Überschrift]] (auch [[Notiz#Überschrift|Text]]) springen zur Überschrift – per Klick in der Vorschau oder Strg/Cmd-Klick im Editor; fehlt die Überschrift, erscheint ein Hinweis. Nach [[Notiz# werden die Überschriften der Zielnotiz vorgeschlagen. Neuer Überschriften-Index netherrack_blocks mit Endpunkt GET notes/blocks bzw. NetherrackService::getBlocks() (#47)
  • Properties: Alle Frontmatter-Felder werden typisiert indiziert (Text, Zahl, Checkbox, Datum, Datum+Uhrzeit, Liste, Tags) in der neuen Tabelle netherrack_properties; neue Endpunkte GET properties und GET notes/properties bzw. NetherrackService::getPropertyKeys()/getProperties(). Der YAML-Leser versteht jetzt auch Kommentare, Anführungszeichen mit Escapes, verschachtelte Maps, Listen ohne Einrückung und mehrzeilige Texte. Ein einmaliger Hintergrundjob indiziert bestehende Notizen nach dem Update (#45)
  • Geteilte Notizen und Group Folders: Änderungen, Umbenennen und Löschen durch einen beliebigen Nutzer aktualisieren den Index aller Nutzer, bei denen die Notiz unter Netherrack/ liegt (Eigentümer und Empfänger). Aufgehobene Freigaben verschwinden aus dem Index des Empfängers. Damit entfällt die bisherige Einschränkung, dass der Index des Eigentümers erst bei dessen nächstem Speichern aktuell wurde (#62)
  • Graph: Beim Überfahren eines Punkts zeigt ein Tooltip den Dateinamen (Pfad) der Notiz – hilfreich, wenn sich Beschriftungen überlappen (#38)

Changed

  • Layouts werden in den Einstellungen (Abschnitt „Layouts“) verwaltet statt über ein eigenes Menü unten in der Navigation: gespeicherte Layouts mit Reiterzahl und zweitem Bereich anzeigen, öffnen, umbenennen, durch das aktuelle Layout ersetzen und löschen (mit Rückfrage)
  • Neue Transkripte tragen das Tag voicenote statt voice-note; bestehende Notizen bleiben unverändert (#58)
  • Ordner und Dateien, deren Name mit einem Punkt beginnt, werden im Dateibaum nicht mehr angezeigt
  • „Neue Notiz“ ist immer ein Menü (Markdown, Base, ggf. Aus Vorlage und Sprachdatei)
  • „Neue Notiz“ legt immer im aktuell geöffneten Ordner an (auch in tieferen Ebenen und im Hauptordner) statt eine Auswahl der Ordner der ersten Ebene anzubieten; das Menü enthält nur noch „Markdown“ und bei aktiver Spracherkennung „Sprachdatei“ (#43)
  • Sprachaufnahmen merken sich den Ordner, in dem die Aufnahme gestartet wurde, und das Transkript wird dort angelegt; die Zuordnung über das erste gesprochene Wort entfällt. POST voice nimmt dafür das optionale Feld folder an (#43)
  • Eingaben und Rückfragen (neue Notiz, neuer Ordner, Umbenennen, Löschen, ungespeicherte Änderungen) nutzen Nextcloud-Dialoge statt der Browser-Dialoge prompt/confirm
  • Vorschau-Schalter ist der Nextcloud-Schalter (NcCheckboxRadioSwitch) statt einer Eigenentwicklung

Fixed

  • „Lesezeichen“ steht in der Navigation mit Icon und Text bündig unter „Heute“, „Graph“ und „Aufgaben“
  • Der Vorschau-Schalter in der Editor-Kopfzeile zeigt beim Überfahren mit der Maus einen Tooltip, ob die Vorschau ein- oder ausgeschaltet ist (vorher erschien gar kein Tooltip) (#65)
  • ![[datei.png]] legt beim Speichern keine leere Notiz datei.png.md mehr an
  • Umbenennen einer Datei, die keine Notiz ist, über die App hängt nicht mehr .md an
  • Speichern schlägt nicht mehr mit „Speichern fehlgeschlagen“ fehl, wenn die Datei gerade gleichzeitig gelesen wird (kurze Wiederholung bei gesperrter Datei)
  • Wiki-Links auf den Titel einer Notiz (statt auf den Dateinamen) gelten in Vorschau und „Ausgehende Links“ als vorhanden und öffnen die Notiz, statt eine neue anzulegen – wie bei Backlinks und Graph. Bei gleichen Namen gewinnt überall die Notiz mit dem kleinsten Pfad
  • Buttons und Menüs zeigen wieder ihre vorgesehene Darstellung (primär/tertiär/Fehler): @nextcloud/vue 9 erwartet dafür variant statt type
  • Beim Löschen eines Nutzers werden auch sein Notiz-Index und seine Einträge im Transkriptions-Log entfernt
  • Transkription: whisper-cli wird ohne eingetragenen Pfad wie in der Statusanzeige im PATH gesucht (vorher meldete der Status „verfügbar“, der Job übersprang aber alles); fehlt ffmpeg, überspringt der Job mit Warnung
  • Dateinamen von Sprachaufnahmen und die heutige Tagesnotiz richten sich nach der Zeitzone des Nutzers statt nach der Serverzeit
  • Transkript-Notizen werden in der Sprache des Nutzers beschriftet (vorher immer Deutsch)
  • Hilfsmarker der Transkription in der App-Konfiguration werden aufgeräumt, sobald die Aufnahme nicht mehr aussteht
  • Transkript-Notizen aus dem Hintergrundjob werden indexiert (Suche, Tags, Backlinks, Graph); ohne angemeldeten Nutzer löst Nextcloud keine Datei-Events aus. Bereits vorhandene Transkripte nimmt occ netherrack:index:rebuild auf
  • Sprachaufnahme in Chrome, Edge und Safari: Die App-Seite gibt das Mikrofon frei (Nextcloud sperrt es standardmäßig per Feature-Policy) und erlaubt das Vorhören der Aufnahme (blob: als Medienquelle); bisher funktionierte die Aufnahme nur in Firefox
Licenses AGPLv3+
Certificate-----BEGIN CERTIFICATE-----
MIIECDCCAvACAhRUMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYxMDA3MTYwOTE2WhcNMzcwMTEyMTYwOTE2WjAYMRYwFAYD
VQQDDA1uY19uZXRoZXJyYWNrMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKC
AgEAwbgEcG8GjoRA/NI/NPLeeObZXVWSgREPk7PVmELu8Zn83Q48PxaU+Y03BCga
QPH3TySKkGi2CHO0N2lp4wED+4i7StDYjveXzHCJ33iffdNIRICm2vbbcCId2OZ7
x3pQ3gtWOtMq3jFLUn/rMVF6KZS37mR4RjYb7zhe6vx9xxbmbVxyarpxjTnQNhs9
x4mi2FiaYbOngUI74/HpOJFyVtSdiucg8jld6bSMY9ZuQrqfeT6cFJWhTEtBINdO
EkQWSaEHSa0mA0ZNq+b+0wALwCYsKgygFeB4MULenX6oKoJst8X21II62L4efSMF
7YauhW6+WEC78uTHIUGm23ORHa+1t4YK9QqatAyJuQ2zVuaf6VNkuFPESdXDIRqM
Vryy0SAP1o7q0GWjQHWopSZoe/8I3ES64RcAZE3QYbJlMjHWyNuj0fPEswp2Y9a0
dPBC8ERnlT2uZBDlQ+nRkA7JaQ7i2t7jjYXeuS65yhozSRw9SR3GOjZbox+Qik+j
QD2VXAkidq11O5f8cbe1UUVJPwAr/rBn8RztE9u6YD+TXxo89M5qObRY5fB9az70
Eg8Q3icPbtV6XRQALvAPdMIHEWd1WfGY4iLPOsciMq8a81rc66MDEynEW4JH+7q+
eCubJ1z06EHVO8iwMkfWRK/6h7j2AET/US5MSW1uev4cqcECAwEAATANBgkqhkiG
9w0BAQsFAAOCAQEAJ6SXk0fYQ8fOddGE+SjClCO2QXBtLVwyJG88qFfYr0v/T0JN
458M18lUx0cEq5H6Pmb9lhbtc8sFRBBcP0iqGwBzpaE3m7JpCuo9ocmVWObQXHhp
Shdbw3HtDLmmdXJoJYvdHmmDDhZ6BbvL9U8LJDiU5Z6Y0zU4QezWQI/WraO1LkQR
YYQBeBbd4+u6FXLlHQINLhkJKPmkBd/ITx707y2hM/D0qiNdIzseJIecA6VY2Cxv
kfmJ97AA8CdO467AwyPLfPw1YSktjDo8vnSPOm1R2oXn9jDGaxKtoEg93FnfhWw9
BDXmBDz9YFdhfd7YReuXa5Me7iIV926KIZoacA==
-----END CERTIFICATE-----
SignatureuO0x8bUd3TM62tGqqYNJnpQKOg58Hx0g72dtX9Z9t18kKhSgD0v8huIdya2Jm2z7
9nrhO1+MOQJuH8yP3XccEVt25crVuH1jwWHm9gbru8Fpe7Nox8vLX+h1f3dZwOdk
Gvgm98ypnhItsiM2yVRC5zvby4w2NmQ7iaZTOvPHBoFtJiPKTCI+r4uq5tzAnPpc
94MBcyx7+KghSygaRxbsSqUEr6eBeUnNs87cS4VpC4PLyeJsKRktqsZQo+p8POaK
EsvZ0+m9ysor6j84or6+f2uyaCproqPZVHUrZgQlC7mbLbVd0Bfet+Cl2DWI+Z9q
IIbiZjjtQbCH8EDyUIj/nmMkWhcOweDgnR81mhTcyyRxbd+yUFguQV/VYP/uesfq
jKlnjvsJ6DrVaSsa5EmcVjclf7OOJggSGb+C2v9P3VJm5mnAqWCCjWQItf4X+WKI
lzm8jtE729pSsIw6Q7gL64BzrAnz1P9OAUnP1E3t0r4PU9TLaxa7z3hnafUs/R5r
NYwvPQ3EIAlovJwPyUEvmN8mNKQHSrGkfj3zYYOS/5V0Ire/XG5mZo728q0Cw0NA
qZEipd7hjce/1HCdOOsAarOXig7LryQ7tBmY2TGgSsu+3mxd4ZxVZo6juI1wVY7M
rBvUPAasIWI9FEi9v50NFzqIcA3p/zdNyj/PGO7kc/I=
Signature digestsha512
Dependencies
Required Nextcloud versions >=31.0.0,<36.0.0
Minimum Integer bits32
PHP>=8.1.0

Nextcloud 32

Netherrack 0.3.3
Release Details
UpdatedOct. 9, 2026, 12:50 p.m.
Changelog

Added

  • @-Erwähnungen (Oberfläche): Autovervollständigung nach @ im Editor über die Nextcloud-Autovervollständigung (Anzeigename, Benutzer-ID, Avatar, auch der eigene Nutzer), die Auswahl fügt @benutzer-id ein; der Autosave pausiert, solange der Cursor in einem unfertigen @…-Wort steht (auch nach Esc). Vorschau zeigt Erwähnungen als Chip mit Anzeigename und Zugriffsstatus (Zugriff / geteilt, aber nicht in Netherrack / kein Zugriff). Neue Ansicht Für mich unterhalb von Aufgaben (Titel, Pfad, Änderungsdatum, Anzahl Erwähnungen, einklappbare Gruppe „Erledigt“, Haken setzt/entfernt done: true, Klick öffnet die Notiz an der ersten Erwähnung). Aufgaben zeigt die Gruppen „Meine Aufgaben“ und „Nicht zugewiesene Aufgaben“ mit Anzahl (#109)
  • @-Erwähnungen (Backend): @benutzer-id (Zeilenanfang/nach Leerzeichen, Satzzeichen abgeschnitten, nur existierende Nutzer, nicht in Code/Frontmatter) im neuen Index netherrack_mentions. Erwähnte Nutzer ohne Zugriff erhalten automatisch eine Freigabe (Lesen + Bearbeiten) unter Netherrack/Geteilt/. Neue Endpunkte GET mentions („Für mich“, erledigt über done: true/status: done), PUT mentions/done, GET mentions/status (Zugriffsstatus) und POST tasks („Meine“ / „Nicht zugewiesene“ Aufgaben); Query-API mit {"task": "assignee"} und task.assignees. Benachrichtigung genau einmal pro Notiz und Nutzer als Aktivität „Erwähnungen in Netherrack“ (Push an, E-Mail aus), ohne Activity-App über Notifications; nicht beim Index-Neuaufbau, nicht bei Selbsterwähnung. Angenommene Freigaben unter dem Notizordner werden sofort indexiert (#108)
  • Notizordner pro Nutzer wählbar statt fest Netherrack/: Einstellungen → Notizordner mit Nextcloud-Ordnerauswahl und „Neuer Ordner …“ (Ort wählen, selbst benennen), Hinweis vor dem Wechsel, dass bisherige Verlinkungen und Dateien eventuell nicht mehr auffindbar sind, und Schalter „Datenbank auf den neuen Ordner ausrichten“ (gespeicherte Pfade umrechnen, Lesezeichen/Layouts übernehmen). Index und Datei-Events folgen dem gewählten Ordner; neuer Endpunkt PUT settings/notes-folder (#106)

Fixed

  • Textmarkierung im Editor und in der Vorschau deutlich sichtbar (heller und dunkler Modus): Der Editor-Inhalt verdeckt die Markierungsebene nicht mehr, die Markierung ist aus der Primärfarbe gemischt und setzt sich von Hintergrund und Text ab, Text bleibt lesbar (Kontrast Markierung/Hintergrund ≥ 1,5:1, Text/Markierung ≥ 4,5:1; E2E-Test selection.spec.js) (#111)
Licenses AGPLv3+
Certificate-----BEGIN CERTIFICATE-----
MIIECDCCAvACAhRUMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYxMDA3MTYwOTE2WhcNMzcwMTEyMTYwOTE2WjAYMRYwFAYD
VQQDDA1uY19uZXRoZXJyYWNrMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKC
AgEAwbgEcG8GjoRA/NI/NPLeeObZXVWSgREPk7PVmELu8Zn83Q48PxaU+Y03BCga
QPH3TySKkGi2CHO0N2lp4wED+4i7StDYjveXzHCJ33iffdNIRICm2vbbcCId2OZ7
x3pQ3gtWOtMq3jFLUn/rMVF6KZS37mR4RjYb7zhe6vx9xxbmbVxyarpxjTnQNhs9
x4mi2FiaYbOngUI74/HpOJFyVtSdiucg8jld6bSMY9ZuQrqfeT6cFJWhTEtBINdO
EkQWSaEHSa0mA0ZNq+b+0wALwCYsKgygFeB4MULenX6oKoJst8X21II62L4efSMF
7YauhW6+WEC78uTHIUGm23ORHa+1t4YK9QqatAyJuQ2zVuaf6VNkuFPESdXDIRqM
Vryy0SAP1o7q0GWjQHWopSZoe/8I3ES64RcAZE3QYbJlMjHWyNuj0fPEswp2Y9a0
dPBC8ERnlT2uZBDlQ+nRkA7JaQ7i2t7jjYXeuS65yhozSRw9SR3GOjZbox+Qik+j
QD2VXAkidq11O5f8cbe1UUVJPwAr/rBn8RztE9u6YD+TXxo89M5qObRY5fB9az70
Eg8Q3icPbtV6XRQALvAPdMIHEWd1WfGY4iLPOsciMq8a81rc66MDEynEW4JH+7q+
eCubJ1z06EHVO8iwMkfWRK/6h7j2AET/US5MSW1uev4cqcECAwEAATANBgkqhkiG
9w0BAQsFAAOCAQEAJ6SXk0fYQ8fOddGE+SjClCO2QXBtLVwyJG88qFfYr0v/T0JN
458M18lUx0cEq5H6Pmb9lhbtc8sFRBBcP0iqGwBzpaE3m7JpCuo9ocmVWObQXHhp
Shdbw3HtDLmmdXJoJYvdHmmDDhZ6BbvL9U8LJDiU5Z6Y0zU4QezWQI/WraO1LkQR
YYQBeBbd4+u6FXLlHQINLhkJKPmkBd/ITx707y2hM/D0qiNdIzseJIecA6VY2Cxv
kfmJ97AA8CdO467AwyPLfPw1YSktjDo8vnSPOm1R2oXn9jDGaxKtoEg93FnfhWw9
BDXmBDz9YFdhfd7YReuXa5Me7iIV926KIZoacA==
-----END CERTIFICATE-----
SignatureoWH8+CdkU7xPmtGeim/zuGWi+smohyzy7zmMoyFG2gubmpgaHUaWSj0IEiwRVbai
3SXl9UfScdmwQ4BbcKmX7phCfOdy6q9rf3EJqHLbO6e2K4NJSpRz+ukqbY1cab8n
Ty8EVrtZTiudf792rftQD6IySfnP+sKlqT9T4R0JLxHMxjkzy0Urus6OEIDCnhHW
ysJ7HXtyE+PSkXXiyMoEgjAOxZmDdNLRF5vlcZw9L68B2m7dKdQeD0P5dKAnbPUY
Ni1aWihCpQgg36w6O8J0mkujV+FtLzKj28iqbHG7UGDrYLJzpZsOH70+Y3K0tJrB
KTlNAnSUjTRluRqQgowhqnf1xzRMhlKdu+5YGgv8CMx5Hypt4CYZk3d76U9u9T41
z/2j7CS6Cg+41oFC54LOctoMJjI8ralyUSvBtDie7eBsuhMnd6Oyv0XpSE+krIUl
Zo9ztQ63EsZuFdYaF6WwK7NqcLphknRDXB2Vb20hS2TYdcdD1olTSn6gUD1U1PGb
VCNHZG8/Iu2ULzU2oxObuwWp+5uk2SdQ5ACegJlMrxET7u6C7TuOEeoRoO5YnmLr
N6gvnLYDYZ5y0comGezbgnmpUsNdN7KpKUpzw86r+AJbep+0WRWyCkAZyhMPBona
aLzcFhIHnUmtfqRRG0sCVI8M/h/4b5U2Y9pwII0Ldws=
Signature digestsha512
Dependencies
Required Nextcloud versions >=31.0.0,<36.0.0
Minimum Integer bits32
PHP>=8.1.0
Netherrack 0.3.1
Release Details
UpdatedOct. 8, 2026, 2:10 p.m.
Changelog

Changed

  • info.xml: ausführliche App-Store-Beschreibung (Features, Doku-Links) im Release-Archiv
Licenses AGPLv3+
Certificate-----BEGIN CERTIFICATE-----
MIIECDCCAvACAhRUMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYxMDA3MTYwOTE2WhcNMzcwMTEyMTYwOTE2WjAYMRYwFAYD
VQQDDA1uY19uZXRoZXJyYWNrMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKC
AgEAwbgEcG8GjoRA/NI/NPLeeObZXVWSgREPk7PVmELu8Zn83Q48PxaU+Y03BCga
QPH3TySKkGi2CHO0N2lp4wED+4i7StDYjveXzHCJ33iffdNIRICm2vbbcCId2OZ7
x3pQ3gtWOtMq3jFLUn/rMVF6KZS37mR4RjYb7zhe6vx9xxbmbVxyarpxjTnQNhs9
x4mi2FiaYbOngUI74/HpOJFyVtSdiucg8jld6bSMY9ZuQrqfeT6cFJWhTEtBINdO
EkQWSaEHSa0mA0ZNq+b+0wALwCYsKgygFeB4MULenX6oKoJst8X21II62L4efSMF
7YauhW6+WEC78uTHIUGm23ORHa+1t4YK9QqatAyJuQ2zVuaf6VNkuFPESdXDIRqM
Vryy0SAP1o7q0GWjQHWopSZoe/8I3ES64RcAZE3QYbJlMjHWyNuj0fPEswp2Y9a0
dPBC8ERnlT2uZBDlQ+nRkA7JaQ7i2t7jjYXeuS65yhozSRw9SR3GOjZbox+Qik+j
QD2VXAkidq11O5f8cbe1UUVJPwAr/rBn8RztE9u6YD+TXxo89M5qObRY5fB9az70
Eg8Q3icPbtV6XRQALvAPdMIHEWd1WfGY4iLPOsciMq8a81rc66MDEynEW4JH+7q+
eCubJ1z06EHVO8iwMkfWRK/6h7j2AET/US5MSW1uev4cqcECAwEAATANBgkqhkiG
9w0BAQsFAAOCAQEAJ6SXk0fYQ8fOddGE+SjClCO2QXBtLVwyJG88qFfYr0v/T0JN
458M18lUx0cEq5H6Pmb9lhbtc8sFRBBcP0iqGwBzpaE3m7JpCuo9ocmVWObQXHhp
Shdbw3HtDLmmdXJoJYvdHmmDDhZ6BbvL9U8LJDiU5Z6Y0zU4QezWQI/WraO1LkQR
YYQBeBbd4+u6FXLlHQINLhkJKPmkBd/ITx707y2hM/D0qiNdIzseJIecA6VY2Cxv
kfmJ97AA8CdO467AwyPLfPw1YSktjDo8vnSPOm1R2oXn9jDGaxKtoEg93FnfhWw9
BDXmBDz9YFdhfd7YReuXa5Me7iIV926KIZoacA==
-----END CERTIFICATE-----
SignatureSh9YclTMi3XkFiNnA6G2GEcF0WBE0xNpwvftffsMMJ2jUI0HIsDJQiW/hdHhT+Yw
my1BK2TZq/45BcxgzLLTPUpUOKRo7fvLXM/TSrMrWpJiCyUoa1G9pBWG4twFHstV
7naFWbMF5X1gb5EjOAS9CdtZ9Qx4VNMQNNVZ8z2OQCeqw/QsBvS0JWPvvv9zj0Fq
XFVzvNUNaYwHa+eXPXG0AMO+bBbnnYjfkJB9XEPtksyzNxa7LRPfYV8neJUgI4ZV
oX1/Lr8DWz50mA5weyr56I9cuELB00XwU8wMOGdhI8VvRjEIjVyT/T+9JIrRsxur
4MnXcv6orOkFccp5b8qIS++D0FrYzAzRTj6/7ld7B0FxEt0cGuItrRt/vUQohu3D
HEgAXWocPs9CiF0GQAEwUmCWOTxOvbPwrNd39I7tjHpbV47kaKSL0cX4LLn5dOfT
WV33besJKt7NKmsAGa7ZDf0+gNRS6wYLFUMK9MWYGWwRImwOWIfnjv1P1SFjHkIJ
70G3RxxiByt2vb+TNaE8isgudlP6OuNsR058v1G1JZZ1asQ2D4KELGJTV1om/JII
mwYIjBQwq3K5M+CRpClU2EpDvs0FYI87+IqUNn1W5rSJ8dq7qL6mOsENBkifgpy/
ptOjd3lc3vmkYvmyXZ29eJoHRjTrHB/GAicoCwqvjhw=
Signature digestsha512
Dependencies
Required Nextcloud versions >=31.0.0,<36.0.0
Minimum Integer bits32
PHP>=8.1.0
Netherrack 0.3.0
Release Details
UpdatedOct. 8, 2026, 2:03 p.m.
Changelog

Added

  • Veröffentlichen: Notizen und Ordner per Linkfreigabe als öffentliche Webseite (/apps/nc_netherrack/s/{token}) mit gerendertem Markdown, Notizliste, Wiki-Links und Einbettungen nur innerhalb der Freigabe; Links nach außen erscheinen als Text. Passwort/Ablaufdatum der Freigabe gelten; kein Zugriff auf den Index. Aktion „Veröffentlichen …“ im Dateibaum (#59)
  • Canvas: .canvas-Dateien im offenen Format JSON Canvas 1.0 mit Text-, Notiz-/Datei-, Link- und Gruppenkarten, Verbindungen mit Beschriftung, Farben, Verschieben/Größe ändern, Zoom, Rückgängig und Autosave; unbekannte Felder bleiben erhalten. „Neue Notiz → Canvas“. [[Ordner/Notiz]] wird jetzt auch über den Pfad aufgelöst (#57)
  • Sprachnotizen: Transkripte erhalten Frontmatter (type: voicenote, recorded, duration, audio, language, tags: [voicenote]) und betten die Aufnahme abspielbar ein (#58)
  • Dateien einbetten: ![[bild.png|300]], PDF, Audio, Video und relative Markdown-Bilder in der Vorschau; Einfügen aus der Zwischenablage bzw. Drag & Drop lädt in den Anhang-Ordner hoch (Einstellung); Umbenennen eines Anhangs über die App schreibt Einbettungen um (#50)
  • Bases: mehrere Ansichten pro .base (views, Umschalten per Reiter) und neue Ansichtstypen Karten (mit optionalem Titelbild), Kanban (Drag & Drop ändert die Spalten-Property im Frontmatter) und Kalender (Monat/Woche nach Datums-Property) (#53)
  • Mehrere Bereiche: Reiter für geöffnete Notizen, zweiter Bereich nebeneinander mit unabhängigem Speichern (Dateibaum-Menü, Strg/Cmd-Klick in der Vorschau, Strg/Cmd+Umschalt-Klick im Editor), wählbare Panels in der rechten Seitenleiste (Backlinks, ausgehende Links, Tags, Gliederung) und benannte Layouts; das letzte Layout wird beim Start wiederhergestellt (#56)
  • Lesezeichen: Bereich in der Seitenleiste für Notizen, Ordner, Überschriften, Blöcke, gespeicherte Suchen, Tags, Bases und Links, mit verschachtelten Gruppen, Umbenennen und Drag & Drop. Stern-Menü in der Editor-Kopfzeile, „Suche speichern“. Gespeichert in Netherrack/.netherrack/bookmarks.json; Lesezeichen folgen Umbenennungen über die Datei-ID (#55)
  • Suche mit Gewichtung: Titel > Überschrift > Tag/Property > Pfad > Inhalt, Häufigkeit als Nebenkriterium; durchsucht jetzt auch Tags und Property-Werte. Treffer zeigen die Fundstelle und springen zur Überschrift bzw. Textstelle – in der Seitenleiste und in der globalen Nextcloud-Suche (?path=&line=) (#64)
  • Bases: Ansichten über Notizen als .base-Datei (YAML, Filter im Format der Query-API) mit Tabellen- und Listenansicht, Spalten, Sortierung per Spaltenkopf, optionaler Gruppierung und direkt bearbeitbaren Property-Zellen (Schreib-Service). „Neue Notiz → Base“, Öffnen im Dateibaum, „Definition bearbeiten“; Endpunkte GET/POST bases (#52)
  • Aufgaben: - [ ]/- [x] aus allen Notizen im neuen Index netherrack_tasks (mit Einrückung/Elternaufgabe und Inline-Feldern due::, priority::). Ansicht „Aufgaben“ mit Filtern nach Status, Fälligkeit, Priorität, Tag und Ordner; Abhaken in Übersicht und Vorschau über den Schreib-Service (PUT notes/tasks); Query-API mit "source": "tasks" (#54)
  • Vorlagen: Jede Notiz im Vorlagen-Ordner (Standard Vorlagen/, pro Nutzer einstellbar) ist eine Vorlage. „Neue Notiz → Aus Vorlage …“ legt im aktuellen Ordner an, „Vorlage einfügen“ fügt am Cursor ein und ergänzt fehlende Frontmatter-Felder; Variablen {{title}}, {{date}}, {{time}}, {{date:FORMAT}}, {{folder}}. Optionale Vorlage für neue Tagesnotizen. Vorlagen werden nicht indexiert. Neuer Einstellungsdialog in der Navigation (#51)
  • Query-API: POST query bzw. NetherrackService::query() fragt Notizen nach Ordnern, Tags, Properties (typgerecht: Zahl, Datum, Bool, Liste), Datei-Feldern und Volltext ab – mit UND/ODER/NICHT-Gruppen, Sortierung nach mehreren Schlüsseln, Auswahl der Properties und Paginierung; ausgeführt als SQL gegen den Index. Das Abfrageformat (Version 1) ist in API.md beschrieben (#63)
  • Properties-Editor: Über dem Editor ein Tag-Feld mit Vorschlägen und ein Properties-Symbol, das einen Dialog zum Anlegen, Ändern, Umbenennen und Entfernen von Properties öffnet – je ein Eingabefeld pro Typ mit Tooltip und Vorschlägen für Keys und Werte (#72); ohne Frontmatter wird der ----Block angelegt. Grundlage ist ein gemeinsamer Schreib-Service (NoteWriter), der nur die betroffenen Zeilen ändert und Konflikte über etag erkennt (HTTP 409); neue Endpunkte PUT/DELETE notes/properties, POST notes/properties/rename, GET properties/values, GET notes/blocks/candidates, POST notes/blocks. „Neue Block-ID“ in der Autovervollständigung nach [[Notiz#^ (#46)
  • Konflikterkennung beim Speichern: Wurde die Notiz seit dem Öffnen anderswo geändert, fragt der Editor (aktuelle Version laden oder überschreiben) statt still zu überschreiben (#46)
  • Einbettungen: ![[Notiz]], ![[Notiz#Überschrift]] und ![[Notiz#^id]] zeigen Notiz, Abschnitt bzw. Block in der Vorschau – abgesetzt, mit Link „Öffnen“, bis 3 Ebenen tief, mit Schutz vor Schleifen. Inhalte kommen gebündelt über den neuen Endpunkt GET embeds bzw. NetherrackService::getEmbeds() (#49)
  • Block-IDs: ^id am Ende eines Absatzes/Listeneintrags (oder allein in der Zeile danach) macht ihn adressierbar; [[Notiz#^id]] springt zum Block und hebt ihn hervor, nach [[Notiz#^ werden Blöcke vorgeschlagen, die Vorschau blendet die Marker aus. Block-IDs stehen im Index netherrack_blocks (Typ block); Backlinks liefern und zeigen die verlinkten Abschnitte/Blöcke (anchors) (#48)
  • Abschnitts-Links [[Notiz#Überschrift]] (auch [[Notiz#Überschrift|Text]]) springen zur Überschrift – per Klick in der Vorschau oder Strg/Cmd-Klick im Editor; fehlt die Überschrift, erscheint ein Hinweis. Nach [[Notiz# werden die Überschriften der Zielnotiz vorgeschlagen. Neuer Überschriften-Index netherrack_blocks mit Endpunkt GET notes/blocks bzw. NetherrackService::getBlocks() (#47)
  • Properties: Alle Frontmatter-Felder werden typisiert indiziert (Text, Zahl, Checkbox, Datum, Datum+Uhrzeit, Liste, Tags) in der neuen Tabelle netherrack_properties; neue Endpunkte GET properties und GET notes/properties bzw. NetherrackService::getPropertyKeys()/getProperties(). Der YAML-Leser versteht jetzt auch Kommentare, Anführungszeichen mit Escapes, verschachtelte Maps, Listen ohne Einrückung und mehrzeilige Texte. Ein einmaliger Hintergrundjob indiziert bestehende Notizen nach dem Update (#45)
  • Geteilte Notizen und Group Folders: Änderungen, Umbenennen und Löschen durch einen beliebigen Nutzer aktualisieren den Index aller Nutzer, bei denen die Notiz unter Netherrack/ liegt (Eigentümer und Empfänger). Aufgehobene Freigaben verschwinden aus dem Index des Empfängers. Damit entfällt die bisherige Einschränkung, dass der Index des Eigentümers erst bei dessen nächstem Speichern aktuell wurde (#62)
  • Graph: Beim Überfahren eines Punkts zeigt ein Tooltip den Dateinamen (Pfad) der Notiz – hilfreich, wenn sich Beschriftungen überlappen (#38)

Changed

  • Layouts werden in den Einstellungen (Abschnitt „Layouts“) verwaltet statt über ein eigenes Menü unten in der Navigation: gespeicherte Layouts mit Reiterzahl und zweitem Bereich anzeigen, öffnen, umbenennen, durch das aktuelle Layout ersetzen und löschen (mit Rückfrage)
  • Neue Transkripte tragen das Tag voicenote statt voice-note; bestehende Notizen bleiben unverändert (#58)
  • Ordner und Dateien, deren Name mit einem Punkt beginnt, werden im Dateibaum nicht mehr angezeigt
  • „Neue Notiz“ ist immer ein Menü (Markdown, Base, ggf. Aus Vorlage und Sprachdatei)
  • „Neue Notiz“ legt immer im aktuell geöffneten Ordner an (auch in tieferen Ebenen und im Hauptordner) statt eine Auswahl der Ordner der ersten Ebene anzubieten; das Menü enthält nur noch „Markdown“ und bei aktiver Spracherkennung „Sprachdatei“ (#43)
  • Sprachaufnahmen merken sich den Ordner, in dem die Aufnahme gestartet wurde, und das Transkript wird dort angelegt; die Zuordnung über das erste gesprochene Wort entfällt. POST voice nimmt dafür das optionale Feld folder an (#43)
  • Eingaben und Rückfragen (neue Notiz, neuer Ordner, Umbenennen, Löschen, ungespeicherte Änderungen) nutzen Nextcloud-Dialoge statt der Browser-Dialoge prompt/confirm
  • Vorschau-Schalter ist der Nextcloud-Schalter (NcCheckboxRadioSwitch) statt einer Eigenentwicklung

Fixed

  • „Lesezeichen“ steht in der Navigation mit Icon und Text bündig unter „Heute“, „Graph“ und „Aufgaben“
  • Der Vorschau-Schalter in der Editor-Kopfzeile zeigt beim Überfahren mit der Maus einen Tooltip, ob die Vorschau ein- oder ausgeschaltet ist (vorher erschien gar kein Tooltip) (#65)
  • ![[datei.png]] legt beim Speichern keine leere Notiz datei.png.md mehr an
  • Umbenennen einer Datei, die keine Notiz ist, über die App hängt nicht mehr .md an
  • Speichern schlägt nicht mehr mit „Speichern fehlgeschlagen“ fehl, wenn die Datei gerade gleichzeitig gelesen wird (kurze Wiederholung bei gesperrter Datei)
  • Wiki-Links auf den Titel einer Notiz (statt auf den Dateinamen) gelten in Vorschau und „Ausgehende Links“ als vorhanden und öffnen die Notiz, statt eine neue anzulegen – wie bei Backlinks und Graph. Bei gleichen Namen gewinnt überall die Notiz mit dem kleinsten Pfad
  • Buttons und Menüs zeigen wieder ihre vorgesehene Darstellung (primär/tertiär/Fehler): @nextcloud/vue 9 erwartet dafür variant statt type
  • Beim Löschen eines Nutzers werden auch sein Notiz-Index und seine Einträge im Transkriptions-Log entfernt
  • Transkription: whisper-cli wird ohne eingetragenen Pfad wie in der Statusanzeige im PATH gesucht (vorher meldete der Status „verfügbar“, der Job übersprang aber alles); fehlt ffmpeg, überspringt der Job mit Warnung
  • Dateinamen von Sprachaufnahmen und die heutige Tagesnotiz richten sich nach der Zeitzone des Nutzers statt nach der Serverzeit
  • Transkript-Notizen werden in der Sprache des Nutzers beschriftet (vorher immer Deutsch)
  • Hilfsmarker der Transkription in der App-Konfiguration werden aufgeräumt, sobald die Aufnahme nicht mehr aussteht
  • Transkript-Notizen aus dem Hintergrundjob werden indexiert (Suche, Tags, Backlinks, Graph); ohne angemeldeten Nutzer löst Nextcloud keine Datei-Events aus. Bereits vorhandene Transkripte nimmt occ netherrack:index:rebuild auf
  • Sprachaufnahme in Chrome, Edge und Safari: Die App-Seite gibt das Mikrofon frei (Nextcloud sperrt es standardmäßig per Feature-Policy) und erlaubt das Vorhören der Aufnahme (blob: als Medienquelle); bisher funktionierte die Aufnahme nur in Firefox
Licenses AGPLv3+
Certificate-----BEGIN CERTIFICATE-----
MIIECDCCAvACAhRUMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYxMDA3MTYwOTE2WhcNMzcwMTEyMTYwOTE2WjAYMRYwFAYD
VQQDDA1uY19uZXRoZXJyYWNrMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKC
AgEAwbgEcG8GjoRA/NI/NPLeeObZXVWSgREPk7PVmELu8Zn83Q48PxaU+Y03BCga
QPH3TySKkGi2CHO0N2lp4wED+4i7StDYjveXzHCJ33iffdNIRICm2vbbcCId2OZ7
x3pQ3gtWOtMq3jFLUn/rMVF6KZS37mR4RjYb7zhe6vx9xxbmbVxyarpxjTnQNhs9
x4mi2FiaYbOngUI74/HpOJFyVtSdiucg8jld6bSMY9ZuQrqfeT6cFJWhTEtBINdO
EkQWSaEHSa0mA0ZNq+b+0wALwCYsKgygFeB4MULenX6oKoJst8X21II62L4efSMF
7YauhW6+WEC78uTHIUGm23ORHa+1t4YK9QqatAyJuQ2zVuaf6VNkuFPESdXDIRqM
Vryy0SAP1o7q0GWjQHWopSZoe/8I3ES64RcAZE3QYbJlMjHWyNuj0fPEswp2Y9a0
dPBC8ERnlT2uZBDlQ+nRkA7JaQ7i2t7jjYXeuS65yhozSRw9SR3GOjZbox+Qik+j
QD2VXAkidq11O5f8cbe1UUVJPwAr/rBn8RztE9u6YD+TXxo89M5qObRY5fB9az70
Eg8Q3icPbtV6XRQALvAPdMIHEWd1WfGY4iLPOsciMq8a81rc66MDEynEW4JH+7q+
eCubJ1z06EHVO8iwMkfWRK/6h7j2AET/US5MSW1uev4cqcECAwEAATANBgkqhkiG
9w0BAQsFAAOCAQEAJ6SXk0fYQ8fOddGE+SjClCO2QXBtLVwyJG88qFfYr0v/T0JN
458M18lUx0cEq5H6Pmb9lhbtc8sFRBBcP0iqGwBzpaE3m7JpCuo9ocmVWObQXHhp
Shdbw3HtDLmmdXJoJYvdHmmDDhZ6BbvL9U8LJDiU5Z6Y0zU4QezWQI/WraO1LkQR
YYQBeBbd4+u6FXLlHQINLhkJKPmkBd/ITx707y2hM/D0qiNdIzseJIecA6VY2Cxv
kfmJ97AA8CdO467AwyPLfPw1YSktjDo8vnSPOm1R2oXn9jDGaxKtoEg93FnfhWw9
BDXmBDz9YFdhfd7YReuXa5Me7iIV926KIZoacA==
-----END CERTIFICATE-----
SignatureuO0x8bUd3TM62tGqqYNJnpQKOg58Hx0g72dtX9Z9t18kKhSgD0v8huIdya2Jm2z7
9nrhO1+MOQJuH8yP3XccEVt25crVuH1jwWHm9gbru8Fpe7Nox8vLX+h1f3dZwOdk
Gvgm98ypnhItsiM2yVRC5zvby4w2NmQ7iaZTOvPHBoFtJiPKTCI+r4uq5tzAnPpc
94MBcyx7+KghSygaRxbsSqUEr6eBeUnNs87cS4VpC4PLyeJsKRktqsZQo+p8POaK
EsvZ0+m9ysor6j84or6+f2uyaCproqPZVHUrZgQlC7mbLbVd0Bfet+Cl2DWI+Z9q
IIbiZjjtQbCH8EDyUIj/nmMkWhcOweDgnR81mhTcyyRxbd+yUFguQV/VYP/uesfq
jKlnjvsJ6DrVaSsa5EmcVjclf7OOJggSGb+C2v9P3VJm5mnAqWCCjWQItf4X+WKI
lzm8jtE729pSsIw6Q7gL64BzrAnz1P9OAUnP1E3t0r4PU9TLaxa7z3hnafUs/R5r
NYwvPQ3EIAlovJwPyUEvmN8mNKQHSrGkfj3zYYOS/5V0Ire/XG5mZo728q0Cw0NA
qZEipd7hjce/1HCdOOsAarOXig7LryQ7tBmY2TGgSsu+3mxd4ZxVZo6juI1wVY7M
rBvUPAasIWI9FEi9v50NFzqIcA3p/zdNyj/PGO7kc/I=
Signature digestsha512
Dependencies
Required Nextcloud versions >=31.0.0,<36.0.0
Minimum Integer bits32
PHP>=8.1.0

Nextcloud 31

Netherrack 0.3.3
Release Details
UpdatedOct. 9, 2026, 12:50 p.m.
Changelog

Added

  • @-Erwähnungen (Oberfläche): Autovervollständigung nach @ im Editor über die Nextcloud-Autovervollständigung (Anzeigename, Benutzer-ID, Avatar, auch der eigene Nutzer), die Auswahl fügt @benutzer-id ein; der Autosave pausiert, solange der Cursor in einem unfertigen @…-Wort steht (auch nach Esc). Vorschau zeigt Erwähnungen als Chip mit Anzeigename und Zugriffsstatus (Zugriff / geteilt, aber nicht in Netherrack / kein Zugriff). Neue Ansicht Für mich unterhalb von Aufgaben (Titel, Pfad, Änderungsdatum, Anzahl Erwähnungen, einklappbare Gruppe „Erledigt“, Haken setzt/entfernt done: true, Klick öffnet die Notiz an der ersten Erwähnung). Aufgaben zeigt die Gruppen „Meine Aufgaben“ und „Nicht zugewiesene Aufgaben“ mit Anzahl (#109)
  • @-Erwähnungen (Backend): @benutzer-id (Zeilenanfang/nach Leerzeichen, Satzzeichen abgeschnitten, nur existierende Nutzer, nicht in Code/Frontmatter) im neuen Index netherrack_mentions. Erwähnte Nutzer ohne Zugriff erhalten automatisch eine Freigabe (Lesen + Bearbeiten) unter Netherrack/Geteilt/. Neue Endpunkte GET mentions („Für mich“, erledigt über done: true/status: done), PUT mentions/done, GET mentions/status (Zugriffsstatus) und POST tasks („Meine“ / „Nicht zugewiesene“ Aufgaben); Query-API mit {"task": "assignee"} und task.assignees. Benachrichtigung genau einmal pro Notiz und Nutzer als Aktivität „Erwähnungen in Netherrack“ (Push an, E-Mail aus), ohne Activity-App über Notifications; nicht beim Index-Neuaufbau, nicht bei Selbsterwähnung. Angenommene Freigaben unter dem Notizordner werden sofort indexiert (#108)
  • Notizordner pro Nutzer wählbar statt fest Netherrack/: Einstellungen → Notizordner mit Nextcloud-Ordnerauswahl und „Neuer Ordner …“ (Ort wählen, selbst benennen), Hinweis vor dem Wechsel, dass bisherige Verlinkungen und Dateien eventuell nicht mehr auffindbar sind, und Schalter „Datenbank auf den neuen Ordner ausrichten“ (gespeicherte Pfade umrechnen, Lesezeichen/Layouts übernehmen). Index und Datei-Events folgen dem gewählten Ordner; neuer Endpunkt PUT settings/notes-folder (#106)

Fixed

  • Textmarkierung im Editor und in der Vorschau deutlich sichtbar (heller und dunkler Modus): Der Editor-Inhalt verdeckt die Markierungsebene nicht mehr, die Markierung ist aus der Primärfarbe gemischt und setzt sich von Hintergrund und Text ab, Text bleibt lesbar (Kontrast Markierung/Hintergrund ≥ 1,5:1, Text/Markierung ≥ 4,5:1; E2E-Test selection.spec.js) (#111)
Licenses AGPLv3+
Certificate-----BEGIN CERTIFICATE-----
MIIECDCCAvACAhRUMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYxMDA3MTYwOTE2WhcNMzcwMTEyMTYwOTE2WjAYMRYwFAYD
VQQDDA1uY19uZXRoZXJyYWNrMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKC
AgEAwbgEcG8GjoRA/NI/NPLeeObZXVWSgREPk7PVmELu8Zn83Q48PxaU+Y03BCga
QPH3TySKkGi2CHO0N2lp4wED+4i7StDYjveXzHCJ33iffdNIRICm2vbbcCId2OZ7
x3pQ3gtWOtMq3jFLUn/rMVF6KZS37mR4RjYb7zhe6vx9xxbmbVxyarpxjTnQNhs9
x4mi2FiaYbOngUI74/HpOJFyVtSdiucg8jld6bSMY9ZuQrqfeT6cFJWhTEtBINdO
EkQWSaEHSa0mA0ZNq+b+0wALwCYsKgygFeB4MULenX6oKoJst8X21II62L4efSMF
7YauhW6+WEC78uTHIUGm23ORHa+1t4YK9QqatAyJuQ2zVuaf6VNkuFPESdXDIRqM
Vryy0SAP1o7q0GWjQHWopSZoe/8I3ES64RcAZE3QYbJlMjHWyNuj0fPEswp2Y9a0
dPBC8ERnlT2uZBDlQ+nRkA7JaQ7i2t7jjYXeuS65yhozSRw9SR3GOjZbox+Qik+j
QD2VXAkidq11O5f8cbe1UUVJPwAr/rBn8RztE9u6YD+TXxo89M5qObRY5fB9az70
Eg8Q3icPbtV6XRQALvAPdMIHEWd1WfGY4iLPOsciMq8a81rc66MDEynEW4JH+7q+
eCubJ1z06EHVO8iwMkfWRK/6h7j2AET/US5MSW1uev4cqcECAwEAATANBgkqhkiG
9w0BAQsFAAOCAQEAJ6SXk0fYQ8fOddGE+SjClCO2QXBtLVwyJG88qFfYr0v/T0JN
458M18lUx0cEq5H6Pmb9lhbtc8sFRBBcP0iqGwBzpaE3m7JpCuo9ocmVWObQXHhp
Shdbw3HtDLmmdXJoJYvdHmmDDhZ6BbvL9U8LJDiU5Z6Y0zU4QezWQI/WraO1LkQR
YYQBeBbd4+u6FXLlHQINLhkJKPmkBd/ITx707y2hM/D0qiNdIzseJIecA6VY2Cxv
kfmJ97AA8CdO467AwyPLfPw1YSktjDo8vnSPOm1R2oXn9jDGaxKtoEg93FnfhWw9
BDXmBDz9YFdhfd7YReuXa5Me7iIV926KIZoacA==
-----END CERTIFICATE-----
SignatureoWH8+CdkU7xPmtGeim/zuGWi+smohyzy7zmMoyFG2gubmpgaHUaWSj0IEiwRVbai
3SXl9UfScdmwQ4BbcKmX7phCfOdy6q9rf3EJqHLbO6e2K4NJSpRz+ukqbY1cab8n
Ty8EVrtZTiudf792rftQD6IySfnP+sKlqT9T4R0JLxHMxjkzy0Urus6OEIDCnhHW
ysJ7HXtyE+PSkXXiyMoEgjAOxZmDdNLRF5vlcZw9L68B2m7dKdQeD0P5dKAnbPUY
Ni1aWihCpQgg36w6O8J0mkujV+FtLzKj28iqbHG7UGDrYLJzpZsOH70+Y3K0tJrB
KTlNAnSUjTRluRqQgowhqnf1xzRMhlKdu+5YGgv8CMx5Hypt4CYZk3d76U9u9T41
z/2j7CS6Cg+41oFC54LOctoMJjI8ralyUSvBtDie7eBsuhMnd6Oyv0XpSE+krIUl
Zo9ztQ63EsZuFdYaF6WwK7NqcLphknRDXB2Vb20hS2TYdcdD1olTSn6gUD1U1PGb
VCNHZG8/Iu2ULzU2oxObuwWp+5uk2SdQ5ACegJlMrxET7u6C7TuOEeoRoO5YnmLr
N6gvnLYDYZ5y0comGezbgnmpUsNdN7KpKUpzw86r+AJbep+0WRWyCkAZyhMPBona
aLzcFhIHnUmtfqRRG0sCVI8M/h/4b5U2Y9pwII0Ldws=
Signature digestsha512
Dependencies
Required Nextcloud versions >=31.0.0,<36.0.0
Minimum Integer bits32
PHP>=8.1.0
Netherrack 0.3.1
Release Details
UpdatedOct. 8, 2026, 2:10 p.m.
Changelog

Changed

  • info.xml: ausführliche App-Store-Beschreibung (Features, Doku-Links) im Release-Archiv
Licenses AGPLv3+
Certificate-----BEGIN CERTIFICATE-----
MIIECDCCAvACAhRUMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYxMDA3MTYwOTE2WhcNMzcwMTEyMTYwOTE2WjAYMRYwFAYD
VQQDDA1uY19uZXRoZXJyYWNrMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKC
AgEAwbgEcG8GjoRA/NI/NPLeeObZXVWSgREPk7PVmELu8Zn83Q48PxaU+Y03BCga
QPH3TySKkGi2CHO0N2lp4wED+4i7StDYjveXzHCJ33iffdNIRICm2vbbcCId2OZ7
x3pQ3gtWOtMq3jFLUn/rMVF6KZS37mR4RjYb7zhe6vx9xxbmbVxyarpxjTnQNhs9
x4mi2FiaYbOngUI74/HpOJFyVtSdiucg8jld6bSMY9ZuQrqfeT6cFJWhTEtBINdO
EkQWSaEHSa0mA0ZNq+b+0wALwCYsKgygFeB4MULenX6oKoJst8X21II62L4efSMF
7YauhW6+WEC78uTHIUGm23ORHa+1t4YK9QqatAyJuQ2zVuaf6VNkuFPESdXDIRqM
Vryy0SAP1o7q0GWjQHWopSZoe/8I3ES64RcAZE3QYbJlMjHWyNuj0fPEswp2Y9a0
dPBC8ERnlT2uZBDlQ+nRkA7JaQ7i2t7jjYXeuS65yhozSRw9SR3GOjZbox+Qik+j
QD2VXAkidq11O5f8cbe1UUVJPwAr/rBn8RztE9u6YD+TXxo89M5qObRY5fB9az70
Eg8Q3icPbtV6XRQALvAPdMIHEWd1WfGY4iLPOsciMq8a81rc66MDEynEW4JH+7q+
eCubJ1z06EHVO8iwMkfWRK/6h7j2AET/US5MSW1uev4cqcECAwEAATANBgkqhkiG
9w0BAQsFAAOCAQEAJ6SXk0fYQ8fOddGE+SjClCO2QXBtLVwyJG88qFfYr0v/T0JN
458M18lUx0cEq5H6Pmb9lhbtc8sFRBBcP0iqGwBzpaE3m7JpCuo9ocmVWObQXHhp
Shdbw3HtDLmmdXJoJYvdHmmDDhZ6BbvL9U8LJDiU5Z6Y0zU4QezWQI/WraO1LkQR
YYQBeBbd4+u6FXLlHQINLhkJKPmkBd/ITx707y2hM/D0qiNdIzseJIecA6VY2Cxv
kfmJ97AA8CdO467AwyPLfPw1YSktjDo8vnSPOm1R2oXn9jDGaxKtoEg93FnfhWw9
BDXmBDz9YFdhfd7YReuXa5Me7iIV926KIZoacA==
-----END CERTIFICATE-----
SignatureSh9YclTMi3XkFiNnA6G2GEcF0WBE0xNpwvftffsMMJ2jUI0HIsDJQiW/hdHhT+Yw
my1BK2TZq/45BcxgzLLTPUpUOKRo7fvLXM/TSrMrWpJiCyUoa1G9pBWG4twFHstV
7naFWbMF5X1gb5EjOAS9CdtZ9Qx4VNMQNNVZ8z2OQCeqw/QsBvS0JWPvvv9zj0Fq
XFVzvNUNaYwHa+eXPXG0AMO+bBbnnYjfkJB9XEPtksyzNxa7LRPfYV8neJUgI4ZV
oX1/Lr8DWz50mA5weyr56I9cuELB00XwU8wMOGdhI8VvRjEIjVyT/T+9JIrRsxur
4MnXcv6orOkFccp5b8qIS++D0FrYzAzRTj6/7ld7B0FxEt0cGuItrRt/vUQohu3D
HEgAXWocPs9CiF0GQAEwUmCWOTxOvbPwrNd39I7tjHpbV47kaKSL0cX4LLn5dOfT
WV33besJKt7NKmsAGa7ZDf0+gNRS6wYLFUMK9MWYGWwRImwOWIfnjv1P1SFjHkIJ
70G3RxxiByt2vb+TNaE8isgudlP6OuNsR058v1G1JZZ1asQ2D4KELGJTV1om/JII
mwYIjBQwq3K5M+CRpClU2EpDvs0FYI87+IqUNn1W5rSJ8dq7qL6mOsENBkifgpy/
ptOjd3lc3vmkYvmyXZ29eJoHRjTrHB/GAicoCwqvjhw=
Signature digestsha512
Dependencies
Required Nextcloud versions >=31.0.0,<36.0.0
Minimum Integer bits32
PHP>=8.1.0
Netherrack 0.3.0
Release Details
UpdatedOct. 8, 2026, 2:03 p.m.
Changelog

Added

  • Veröffentlichen: Notizen und Ordner per Linkfreigabe als öffentliche Webseite (/apps/nc_netherrack/s/{token}) mit gerendertem Markdown, Notizliste, Wiki-Links und Einbettungen nur innerhalb der Freigabe; Links nach außen erscheinen als Text. Passwort/Ablaufdatum der Freigabe gelten; kein Zugriff auf den Index. Aktion „Veröffentlichen …“ im Dateibaum (#59)
  • Canvas: .canvas-Dateien im offenen Format JSON Canvas 1.0 mit Text-, Notiz-/Datei-, Link- und Gruppenkarten, Verbindungen mit Beschriftung, Farben, Verschieben/Größe ändern, Zoom, Rückgängig und Autosave; unbekannte Felder bleiben erhalten. „Neue Notiz → Canvas“. [[Ordner/Notiz]] wird jetzt auch über den Pfad aufgelöst (#57)
  • Sprachnotizen: Transkripte erhalten Frontmatter (type: voicenote, recorded, duration, audio, language, tags: [voicenote]) und betten die Aufnahme abspielbar ein (#58)
  • Dateien einbetten: ![[bild.png|300]], PDF, Audio, Video und relative Markdown-Bilder in der Vorschau; Einfügen aus der Zwischenablage bzw. Drag & Drop lädt in den Anhang-Ordner hoch (Einstellung); Umbenennen eines Anhangs über die App schreibt Einbettungen um (#50)
  • Bases: mehrere Ansichten pro .base (views, Umschalten per Reiter) und neue Ansichtstypen Karten (mit optionalem Titelbild), Kanban (Drag & Drop ändert die Spalten-Property im Frontmatter) und Kalender (Monat/Woche nach Datums-Property) (#53)
  • Mehrere Bereiche: Reiter für geöffnete Notizen, zweiter Bereich nebeneinander mit unabhängigem Speichern (Dateibaum-Menü, Strg/Cmd-Klick in der Vorschau, Strg/Cmd+Umschalt-Klick im Editor), wählbare Panels in der rechten Seitenleiste (Backlinks, ausgehende Links, Tags, Gliederung) und benannte Layouts; das letzte Layout wird beim Start wiederhergestellt (#56)
  • Lesezeichen: Bereich in der Seitenleiste für Notizen, Ordner, Überschriften, Blöcke, gespeicherte Suchen, Tags, Bases und Links, mit verschachtelten Gruppen, Umbenennen und Drag & Drop. Stern-Menü in der Editor-Kopfzeile, „Suche speichern“. Gespeichert in Netherrack/.netherrack/bookmarks.json; Lesezeichen folgen Umbenennungen über die Datei-ID (#55)
  • Suche mit Gewichtung: Titel > Überschrift > Tag/Property > Pfad > Inhalt, Häufigkeit als Nebenkriterium; durchsucht jetzt auch Tags und Property-Werte. Treffer zeigen die Fundstelle und springen zur Überschrift bzw. Textstelle – in der Seitenleiste und in der globalen Nextcloud-Suche (?path=&line=) (#64)
  • Bases: Ansichten über Notizen als .base-Datei (YAML, Filter im Format der Query-API) mit Tabellen- und Listenansicht, Spalten, Sortierung per Spaltenkopf, optionaler Gruppierung und direkt bearbeitbaren Property-Zellen (Schreib-Service). „Neue Notiz → Base“, Öffnen im Dateibaum, „Definition bearbeiten“; Endpunkte GET/POST bases (#52)
  • Aufgaben: - [ ]/- [x] aus allen Notizen im neuen Index netherrack_tasks (mit Einrückung/Elternaufgabe und Inline-Feldern due::, priority::). Ansicht „Aufgaben“ mit Filtern nach Status, Fälligkeit, Priorität, Tag und Ordner; Abhaken in Übersicht und Vorschau über den Schreib-Service (PUT notes/tasks); Query-API mit "source": "tasks" (#54)
  • Vorlagen: Jede Notiz im Vorlagen-Ordner (Standard Vorlagen/, pro Nutzer einstellbar) ist eine Vorlage. „Neue Notiz → Aus Vorlage …“ legt im aktuellen Ordner an, „Vorlage einfügen“ fügt am Cursor ein und ergänzt fehlende Frontmatter-Felder; Variablen {{title}}, {{date}}, {{time}}, {{date:FORMAT}}, {{folder}}. Optionale Vorlage für neue Tagesnotizen. Vorlagen werden nicht indexiert. Neuer Einstellungsdialog in der Navigation (#51)
  • Query-API: POST query bzw. NetherrackService::query() fragt Notizen nach Ordnern, Tags, Properties (typgerecht: Zahl, Datum, Bool, Liste), Datei-Feldern und Volltext ab – mit UND/ODER/NICHT-Gruppen, Sortierung nach mehreren Schlüsseln, Auswahl der Properties und Paginierung; ausgeführt als SQL gegen den Index. Das Abfrageformat (Version 1) ist in API.md beschrieben (#63)
  • Properties-Editor: Über dem Editor ein Tag-Feld mit Vorschlägen und ein Properties-Symbol, das einen Dialog zum Anlegen, Ändern, Umbenennen und Entfernen von Properties öffnet – je ein Eingabefeld pro Typ mit Tooltip und Vorschlägen für Keys und Werte (#72); ohne Frontmatter wird der ----Block angelegt. Grundlage ist ein gemeinsamer Schreib-Service (NoteWriter), der nur die betroffenen Zeilen ändert und Konflikte über etag erkennt (HTTP 409); neue Endpunkte PUT/DELETE notes/properties, POST notes/properties/rename, GET properties/values, GET notes/blocks/candidates, POST notes/blocks. „Neue Block-ID“ in der Autovervollständigung nach [[Notiz#^ (#46)
  • Konflikterkennung beim Speichern: Wurde die Notiz seit dem Öffnen anderswo geändert, fragt der Editor (aktuelle Version laden oder überschreiben) statt still zu überschreiben (#46)
  • Einbettungen: ![[Notiz]], ![[Notiz#Überschrift]] und ![[Notiz#^id]] zeigen Notiz, Abschnitt bzw. Block in der Vorschau – abgesetzt, mit Link „Öffnen“, bis 3 Ebenen tief, mit Schutz vor Schleifen. Inhalte kommen gebündelt über den neuen Endpunkt GET embeds bzw. NetherrackService::getEmbeds() (#49)
  • Block-IDs: ^id am Ende eines Absatzes/Listeneintrags (oder allein in der Zeile danach) macht ihn adressierbar; [[Notiz#^id]] springt zum Block und hebt ihn hervor, nach [[Notiz#^ werden Blöcke vorgeschlagen, die Vorschau blendet die Marker aus. Block-IDs stehen im Index netherrack_blocks (Typ block); Backlinks liefern und zeigen die verlinkten Abschnitte/Blöcke (anchors) (#48)
  • Abschnitts-Links [[Notiz#Überschrift]] (auch [[Notiz#Überschrift|Text]]) springen zur Überschrift – per Klick in der Vorschau oder Strg/Cmd-Klick im Editor; fehlt die Überschrift, erscheint ein Hinweis. Nach [[Notiz# werden die Überschriften der Zielnotiz vorgeschlagen. Neuer Überschriften-Index netherrack_blocks mit Endpunkt GET notes/blocks bzw. NetherrackService::getBlocks() (#47)
  • Properties: Alle Frontmatter-Felder werden typisiert indiziert (Text, Zahl, Checkbox, Datum, Datum+Uhrzeit, Liste, Tags) in der neuen Tabelle netherrack_properties; neue Endpunkte GET properties und GET notes/properties bzw. NetherrackService::getPropertyKeys()/getProperties(). Der YAML-Leser versteht jetzt auch Kommentare, Anführungszeichen mit Escapes, verschachtelte Maps, Listen ohne Einrückung und mehrzeilige Texte. Ein einmaliger Hintergrundjob indiziert bestehende Notizen nach dem Update (#45)
  • Geteilte Notizen und Group Folders: Änderungen, Umbenennen und Löschen durch einen beliebigen Nutzer aktualisieren den Index aller Nutzer, bei denen die Notiz unter Netherrack/ liegt (Eigentümer und Empfänger). Aufgehobene Freigaben verschwinden aus dem Index des Empfängers. Damit entfällt die bisherige Einschränkung, dass der Index des Eigentümers erst bei dessen nächstem Speichern aktuell wurde (#62)
  • Graph: Beim Überfahren eines Punkts zeigt ein Tooltip den Dateinamen (Pfad) der Notiz – hilfreich, wenn sich Beschriftungen überlappen (#38)

Changed

  • Layouts werden in den Einstellungen (Abschnitt „Layouts“) verwaltet statt über ein eigenes Menü unten in der Navigation: gespeicherte Layouts mit Reiterzahl und zweitem Bereich anzeigen, öffnen, umbenennen, durch das aktuelle Layout ersetzen und löschen (mit Rückfrage)
  • Neue Transkripte tragen das Tag voicenote statt voice-note; bestehende Notizen bleiben unverändert (#58)
  • Ordner und Dateien, deren Name mit einem Punkt beginnt, werden im Dateibaum nicht mehr angezeigt
  • „Neue Notiz“ ist immer ein Menü (Markdown, Base, ggf. Aus Vorlage und Sprachdatei)
  • „Neue Notiz“ legt immer im aktuell geöffneten Ordner an (auch in tieferen Ebenen und im Hauptordner) statt eine Auswahl der Ordner der ersten Ebene anzubieten; das Menü enthält nur noch „Markdown“ und bei aktiver Spracherkennung „Sprachdatei“ (#43)
  • Sprachaufnahmen merken sich den Ordner, in dem die Aufnahme gestartet wurde, und das Transkript wird dort angelegt; die Zuordnung über das erste gesprochene Wort entfällt. POST voice nimmt dafür das optionale Feld folder an (#43)
  • Eingaben und Rückfragen (neue Notiz, neuer Ordner, Umbenennen, Löschen, ungespeicherte Änderungen) nutzen Nextcloud-Dialoge statt der Browser-Dialoge prompt/confirm
  • Vorschau-Schalter ist der Nextcloud-Schalter (NcCheckboxRadioSwitch) statt einer Eigenentwicklung

Fixed

  • „Lesezeichen“ steht in der Navigation mit Icon und Text bündig unter „Heute“, „Graph“ und „Aufgaben“
  • Der Vorschau-Schalter in der Editor-Kopfzeile zeigt beim Überfahren mit der Maus einen Tooltip, ob die Vorschau ein- oder ausgeschaltet ist (vorher erschien gar kein Tooltip) (#65)
  • ![[datei.png]] legt beim Speichern keine leere Notiz datei.png.md mehr an
  • Umbenennen einer Datei, die keine Notiz ist, über die App hängt nicht mehr .md an
  • Speichern schlägt nicht mehr mit „Speichern fehlgeschlagen“ fehl, wenn die Datei gerade gleichzeitig gelesen wird (kurze Wiederholung bei gesperrter Datei)
  • Wiki-Links auf den Titel einer Notiz (statt auf den Dateinamen) gelten in Vorschau und „Ausgehende Links“ als vorhanden und öffnen die Notiz, statt eine neue anzulegen – wie bei Backlinks und Graph. Bei gleichen Namen gewinnt überall die Notiz mit dem kleinsten Pfad
  • Buttons und Menüs zeigen wieder ihre vorgesehene Darstellung (primär/tertiär/Fehler): @nextcloud/vue 9 erwartet dafür variant statt type
  • Beim Löschen eines Nutzers werden auch sein Notiz-Index und seine Einträge im Transkriptions-Log entfernt
  • Transkription: whisper-cli wird ohne eingetragenen Pfad wie in der Statusanzeige im PATH gesucht (vorher meldete der Status „verfügbar“, der Job übersprang aber alles); fehlt ffmpeg, überspringt der Job mit Warnung
  • Dateinamen von Sprachaufnahmen und die heutige Tagesnotiz richten sich nach der Zeitzone des Nutzers statt nach der Serverzeit
  • Transkript-Notizen werden in der Sprache des Nutzers beschriftet (vorher immer Deutsch)
  • Hilfsmarker der Transkription in der App-Konfiguration werden aufgeräumt, sobald die Aufnahme nicht mehr aussteht
  • Transkript-Notizen aus dem Hintergrundjob werden indexiert (Suche, Tags, Backlinks, Graph); ohne angemeldeten Nutzer löst Nextcloud keine Datei-Events aus. Bereits vorhandene Transkripte nimmt occ netherrack:index:rebuild auf
  • Sprachaufnahme in Chrome, Edge und Safari: Die App-Seite gibt das Mikrofon frei (Nextcloud sperrt es standardmäßig per Feature-Policy) und erlaubt das Vorhören der Aufnahme (blob: als Medienquelle); bisher funktionierte die Aufnahme nur in Firefox
Licenses AGPLv3+
Certificate-----BEGIN CERTIFICATE-----
MIIECDCCAvACAhRUMA0GCSqGSIb3DQEBCwUAMHsxCzAJBgNVBAYTAkRFMRswGQYD
VQQIDBJCYWRlbi1XdWVydHRlbWJlcmcxFzAVBgNVBAoMDk5leHRjbG91ZCBHbWJI
MTYwNAYDVQQDDC1OZXh0Y2xvdWQgQ29kZSBTaWduaW5nIEludGVybWVkaWF0ZSBB
dXRob3JpdHkwHhcNMjYxMDA3MTYwOTE2WhcNMzcwMTEyMTYwOTE2WjAYMRYwFAYD
VQQDDA1uY19uZXRoZXJyYWNrMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKC
AgEAwbgEcG8GjoRA/NI/NPLeeObZXVWSgREPk7PVmELu8Zn83Q48PxaU+Y03BCga
QPH3TySKkGi2CHO0N2lp4wED+4i7StDYjveXzHCJ33iffdNIRICm2vbbcCId2OZ7
x3pQ3gtWOtMq3jFLUn/rMVF6KZS37mR4RjYb7zhe6vx9xxbmbVxyarpxjTnQNhs9
x4mi2FiaYbOngUI74/HpOJFyVtSdiucg8jld6bSMY9ZuQrqfeT6cFJWhTEtBINdO
EkQWSaEHSa0mA0ZNq+b+0wALwCYsKgygFeB4MULenX6oKoJst8X21II62L4efSMF
7YauhW6+WEC78uTHIUGm23ORHa+1t4YK9QqatAyJuQ2zVuaf6VNkuFPESdXDIRqM
Vryy0SAP1o7q0GWjQHWopSZoe/8I3ES64RcAZE3QYbJlMjHWyNuj0fPEswp2Y9a0
dPBC8ERnlT2uZBDlQ+nRkA7JaQ7i2t7jjYXeuS65yhozSRw9SR3GOjZbox+Qik+j
QD2VXAkidq11O5f8cbe1UUVJPwAr/rBn8RztE9u6YD+TXxo89M5qObRY5fB9az70
Eg8Q3icPbtV6XRQALvAPdMIHEWd1WfGY4iLPOsciMq8a81rc66MDEynEW4JH+7q+
eCubJ1z06EHVO8iwMkfWRK/6h7j2AET/US5MSW1uev4cqcECAwEAATANBgkqhkiG
9w0BAQsFAAOCAQEAJ6SXk0fYQ8fOddGE+SjClCO2QXBtLVwyJG88qFfYr0v/T0JN
458M18lUx0cEq5H6Pmb9lhbtc8sFRBBcP0iqGwBzpaE3m7JpCuo9ocmVWObQXHhp
Shdbw3HtDLmmdXJoJYvdHmmDDhZ6BbvL9U8LJDiU5Z6Y0zU4QezWQI/WraO1LkQR
YYQBeBbd4+u6FXLlHQINLhkJKPmkBd/ITx707y2hM/D0qiNdIzseJIecA6VY2Cxv
kfmJ97AA8CdO467AwyPLfPw1YSktjDo8vnSPOm1R2oXn9jDGaxKtoEg93FnfhWw9
BDXmBDz9YFdhfd7YReuXa5Me7iIV926KIZoacA==
-----END CERTIFICATE-----
SignatureuO0x8bUd3TM62tGqqYNJnpQKOg58Hx0g72dtX9Z9t18kKhSgD0v8huIdya2Jm2z7
9nrhO1+MOQJuH8yP3XccEVt25crVuH1jwWHm9gbru8Fpe7Nox8vLX+h1f3dZwOdk
Gvgm98ypnhItsiM2yVRC5zvby4w2NmQ7iaZTOvPHBoFtJiPKTCI+r4uq5tzAnPpc
94MBcyx7+KghSygaRxbsSqUEr6eBeUnNs87cS4VpC4PLyeJsKRktqsZQo+p8POaK
EsvZ0+m9ysor6j84or6+f2uyaCproqPZVHUrZgQlC7mbLbVd0Bfet+Cl2DWI+Z9q
IIbiZjjtQbCH8EDyUIj/nmMkWhcOweDgnR81mhTcyyRxbd+yUFguQV/VYP/uesfq
jKlnjvsJ6DrVaSsa5EmcVjclf7OOJggSGb+C2v9P3VJm5mnAqWCCjWQItf4X+WKI
lzm8jtE729pSsIw6Q7gL64BzrAnz1P9OAUnP1E3t0r4PU9TLaxa7z3hnafUs/R5r
NYwvPQ3EIAlovJwPyUEvmN8mNKQHSrGkfj3zYYOS/5V0Ire/XG5mZo728q0Cw0NA
qZEipd7hjce/1HCdOOsAarOXig7LryQ7tBmY2TGgSsu+3mxd4ZxVZo6juI1wVY7M
rBvUPAasIWI9FEi9v50NFzqIcA3p/zdNyj/PGO7kc/I=
Signature digestsha512
Dependencies
Required Nextcloud versions >=31.0.0,<36.0.0
Minimum Integer bits32
PHP>=8.1.0