NODIS-Reader

Stable

Satzweises Lesen erzwingen. Textverständnis trainieren. Force sentence-by-sentence reading. Train text comprehension.

Single-Page PHP-App ohne Datenbank. Lehrkraft lädt Text hoch, vergibt einen Code, Lernende geben den Code ein und lesen Satz für Satz. Läuft auf jedem PHP-Webspace. Single-page PHP app, no database. Teacher uploads a text, assigns a code, students enter the code and read sentence by sentence. Runs on any PHP webspace.

💡 Codes zum Testen: luther oder krappmann 💡 Test codes: luther or krappmann

NODIS-Reader: frisch geöffneter Text, alle Sätze noch unbearbeitet

Ein frisch geöffneter Text — alle Sätze sind abgedimmt. A freshly opened text — all sentences are dimmed.

Warum satzweises Lesen? Why sentence-by-sentence?

Lernende überfliegen Texte. Das ist kein Defizit, sondern eine Gewohnheit — und bei Sachtexten oder Fremdsprachen ein Problem: Wichtige Details gehen verloren, weil das Auge vorauseilt.

Der NODIS-Reader macht den Text absichtlich unsichtbar. Nur der aktuelle Satz ist klar lesbar. Jeder Satz muss aktiv bestätigt werden, bevor der nächste erscheint. Die Idee stammt aus der Leseforschung: Wer gezwungen wird, Satz für Satz zu verarbeiten, aktiviert metakognitive Strategien — Selbstüberwachung des eigenen Verständnisses.

Ein bewusster Bewertungsschritt verstärkt diesen Effekt:

  • ✓ Verstanden — der Satz wird grün markiert
  • ? Unklar — der Satz wird rot markiert

So entsteht beim Lesen eine visuelle Karte des eigenen Verständnisses. Unklare Stellen sind sofort erkennbar — für Lernende wie für Lehrkräfte.

Students skim texts. That's not a deficit, it's a habit — and with non-fiction texts or foreign languages it's a problem: important details get lost because the eye moves ahead.

The NODIS-Reader intentionally hides the text. Only the current sentence is clearly readable. Each sentence must be actively confirmed before the next one appears. The idea comes from reading research: being forced to process sentence by sentence activates metacognitive strategies — self-monitoring of one's own comprehension.

A deliberate evaluation step reinforces this effect:

  • ✓ Understood — the sentence turns green
  • ? Unclear — the sentence turns red

This creates a visual map of comprehension while reading. Unclear passages are immediately visible — for students and teachers alike.

NODIS-Reader: Text mit grün (verstanden) und rot (unklar) markierten Sätzen

Grün = verstanden, rot = unklar. Der aktuelle Satz ist weiß hervorgehoben. Green = understood, red = unclear. The current sentence is highlighted in white.

Marginalien & Responsive Marginalia & Responsive

Lesehilfen am Rand. Funktioniert auch auf dem Handy. Reading aids in the margin. Works on mobile too.

Lehrkräfte können Marginalien direkt im Textformat einbetten: [Text in Klammern] wird zur nummerierten Randnotiz. Am Desktop erscheinen sie rechts neben dem Fließtext, auf dem Smartphone als Fußnoten unter dem Absatz.

Typische Einsatzzwecke: Vokabelhilfen, Begriffserklärungen, didaktische Hinweise oder Kontextinformationen — alles, was das Verständnis unterstützt, ohne den Lesefluss zu unterbrechen.

Die gesamte App ist responsiv: Texte, Bilder und Diagramme passen sich an jedes Gerät an. Auch eingebettete Grafiken ([[bild.jpg]]) werden korrekt skaliert.

Teachers can embed marginalia directly in the text format: [text in brackets] becomes a numbered margin note. On desktop they appear to the right of the body text, on mobile as footnotes below the paragraph.

Typical use cases: vocabulary aids, term definitions, didactic hints, or context information — anything that supports comprehension without interrupting reading flow.

The entire app is responsive: texts, images, and diagrams adapt to any device. Even embedded graphics ([[image.jpg]]) scale correctly.

NODIS-Reader: Marginalien als nummerierte Randnotizen neben dem Text

Marginalien am Desktop Marginalia on desktop

NODIS-Reader: Responsive Ansicht auf dem Smartphone mit eingebettetem Diagramm

Mobile mit Grafik Mobile with chart

Features

Satzweises Lesen Sentence-by-Sentence

Nur der aktuelle Satz ist sichtbar. Der Rest bleibt verborgen. Only the current sentence is visible. The rest stays hidden.

Verständnis-Feedback Comprehension Feedback

Jeden Satz mit ✓ oder ? bewerten. Grün = verstanden, rot = unklar. Rate each sentence with ✓ or ?. Green = understood, red = unclear.

Marginalien Marginalia

[Text in Klammern] wird zur Randnotiz. Desktop: rechts. Mobil: Fußnote. [Text in brackets] becomes a margin note. Desktop: right side. Mobile: footnote.

Bilder im Text Inline Images

[[bild.jpg]] bettet Diagramme, Karten oder Fotos direkt ein. [[image.jpg]] embeds diagrams, maps or photos inline.

Admin-Bereich Admin Panel

Texte hochladen, bearbeiten, löschen. Passwort per .env. Upload, edit, delete texts. Password via .env.

Zero Dependencies

Kein Framework, keine Datenbank, kein npm. PHP-Server reicht. No framework, no database, no npm. A PHP server is enough.

Ablauf Workflow

1
Text hochladen Upload text
.txt-Datei + Bilder ins Admin-Dashboard. Code vergeben, z. B. bio01. .txt file + images via admin dashboard. Assign a code like bio01.
2
Code weitergeben Share code
Lernende geben den Code auf der Startseite ein. Students enter the code on the start page.
3
Lesen Read
Reader öffnet sich. Satz für Satz, mit Marginalien und Fortschrittsanzeige. Reader opens. Sentence by sentence, with marginalia and progress bar.

Textformat Text Format

Einfache .txt-Dateien. Kein Markup. Plain .txt files. No markup.

Erste Zeile = Überschrift. Satzende (Punkt, Ausrufezeichen, Fragezeichen) = neuer Lese-Schritt. Absätze bleiben erhalten.

First line = title. Sentence end (period, exclamation, question mark) = new reading step. Paragraphs are preserved.

  • [Text]Marginalie Marginalia
  • [[bild.jpg]]Bild Image
  • - ItemListe List
Titel des Textes

Hier ist ein Absatz. Jeder Satz
endet mit einem Punkt. Der Reader
teilt automatisch auf!

Noch ein Absatz mit Erklärung
[dies ist eine Marginalie].

- Erster Punkt
- Zweiter Punkt

[[diagramm.jpg]]

Tech Stack

PHP Single-Page Backend
CSS Dark Theme, Responsive
JavaScript Reader-Logik
Dateisystem Filesystem Keine DB No DB

Installation

1

Klonen Clone

git clone https://github.com/beitist/NODIS-reader.git
2

Passwort setzen Set password

cp .env.example .env
nano .env  # ADMIN_PASSWORD=deinPasswort
3

Auf Webserver laden Upload to webserver

Den Ordner auf einen beliebigen Webserver mit PHP-Unterstützung hochladen — das hat praktisch jeder Webspace. Keine Datenbank, kein Framework nötig. Upload the folder to any webserver with PHP support — virtually every shared hosting has that. No database, no framework needed.