Dumbcourse – UI für ältere Browser unter /dumb (D-Pad + kleine Bildschirme)

:information_source: Zusammenfassung Dumbcourse fügt eine leichte, für ältere Browser geeignete Discourse-Oberfläche unter /dumb hinzu, die für D-Pad-Navigation, kleine Bildschirme und ältere Android-WebViews entwickelt wurde, in denen die Standard-Discourse-Oberfläche zu schwerfällig sein kann.
:hammer_and_wrench: Repositorium GitHub - JTech-Forums/JtechTools: Jtech — combined Discourse plugin bundle: dislike, another-smtp, mini-mod, mod-categories, dumbcourse. One plugin.rb, six admin tabs, no namespace collisions. · GitHub
:open_book: Installationsanleitung So installierst du Plugins in Discourse


Dieses Projekt wurde dank der Arbeit von @ars18 möglich:

https://github.com/alltechdev/jtech-web

Das ursprüngliche Projekt verwendet einen Cloudflare-Worker-Proxy, um das Forum bereitzustellen, und das Dumbcourse-Plugin integriert dies vollständig in deine Discourse-Instanz. Dumbcourse verwendet keinen Proxy, sondern stellt die Inhalte direkt bereit.


Funktionen

  • Stellt eine minimale SPA unter /dumb auf demselben Discourse-Domain bereit
  • ES5 / kein Build-Schritt; bewusst minimale DOM/JS/CSS für ältere Browser und WebViews
  • Verwendet Discourse-JSON-Endpunkte derselben Herkunft und Standard-Discourse-Sitzungscookies
  • Themenlisten: latest, new, top, unseen, hot, my, plus Kategorien
  • Kategorieansicht: /dumb/c/:slug/:id
  • Themen lesen und posten (Antwort/Zitat/Reaktionen)
  • Suche und grundlegende Profilansichten
  • D-Pad-freundliche Navigation mit fokussierbaren UI-Elementen

Konfiguration

  1. Plugin installieren

    • Füge das Repository in containers/app.yml unter hooks -> after_code hinzu und baue den Container neu.
  2. Aktivieren

    • Gehe zu Admin → Plugins → Dumbcourse
    • Aktiviere dumbcourse_enabled
  3. Standardwerte wählen

    • Setze das Standard-Theme und die Standard-Landing-View (siehe Einstellungen unten).
  4. Prüfen

    • Besuche: https://YOUR_FORUM_DOMAIN/dumb
    • Anonyme Benutzer sollten auf /dumb/login landen
    • Angemeldete Benutzer sollten die konfigurierte Standardansicht sehen

Screenshots

Alter Browser / Standard-Discourse-Oberfläche

Dumbcourse-Oberfläche

In einem Thread

Beitragsaktionen / Auswahl

Grundlegendes Menü

Plugin-Einstellungen


Status / Bekannte Einschränkungen

Dieses Projekt ist derzeit im Beta-Status (die erste Implementierung erfolgte schnell), daher sind raue Kanten zu erwarten. Beiträge und Code-Reviews sind willkommen.

Aktuell bekannte Lücken / offene Fragen:

  • Registrierung + CAPTCHA: Die Kontoerstellung stützt sich auf den Standard-Registrierungsablauf von Discourse, aber das CAPTCHA-Verhalten kann je nach Site-Konfiguration variieren.
  • Sicherheitsüberprüfung: Die vereinfachte Oberfläche sollte die Discourse-Berechtigungen nicht umgehen, aber es wurde noch keine gründliche Sicherheitsüberprüfung durchgeführt. Bitte melde alle Bedenken oder verdächtiges Verhalten.
  • Moderations-/Admin-UX: Moderations- und Admin-Tools sind derzeit minimal; eine sichere Erweiterung steht auf der Roadmap.
  • Touch- und D-Pad-Interaktionen: Touch-Eingaben können auf einigen Geräten mit der Fokussierung kollidieren; Verbesserungen sind geplant.
  • Linkfreigabe: /dumb bietet eine alternative Oberfläche, was Fragen zur Freigabe kanonischer Links zwischen „dumb“- und Standardbenutzern aufwirft. Ein konsistenter Ansatz wird noch ausgearbeitet.

Credits

Besonderer Dank an @ars18 (GitHub: https://github.com/alltechdev) für wesentliche Beiträge und die Unterstützung bei der Initiierung der ursprünglichen Idee.


Einstellungen

Name Beschreibung
dumbcourse_enabled Haupt-Ein-/Aus-Schalter für Dumbcourse.
dumbcourse_default_theme Standard-Theme für /dumb (dark / light).
dumbcourse_default_view Standard-Landing-View (latest / new / top / unseen / hot / my / categories).
dumbcourse_sidebar_link_enabled Fügt einen Seitenleistenlink zu /dumb hinzu.

18 „Gefällt mir“

Das klingt nach einer ausgezeichneten Idee!

Ich mag die Darstellung des Namens in den URLs allerdings nicht – kann das konfigurierbar sein, sodass zum Beispiel /simple/ anstelle von /dumb/ verwendet wird?

(Eigentlich bin ich mit dem Namen nicht sehr glücklich, aber wenn er konfigurierbar ist, hilft das. Es ist eine Beleidigung und ziemlich idiomatisch.)

3 „Gefällt mir“

Wow, das sieht wirklich gut aus! Sieht so aus, als gäbe es eine Lösung für die Frustrationen einiger Benutzer aufgrund der Nichtunterstützung alter Browser in Dropping iOS 15 & other old browsers in July 2025.

In der Welt der einfachen Handys ist das akzeptiert, aber ja, ich werde dafür eine Einstellung hinzufügen.

2 „Gefällt mir“

Ich habe kürzlich eine Ergänzung der Admin/Mod-Einstellungen implementiert. Die Überprüfungswarteschlange benötigt noch etwas Arbeit.

Screenshots

4 „Gefällt mir“

Habe vergessen zu erwähnen, hier ist die begleitende Android APK.

Unterstützt Android 6+ und Chrome WebView 44+.

Beispiel (unsere Foren-APK)

3 „Gefällt mir“

Da hast du es.

4 „Gefällt mir“

Schnelle Arbeit… vielen Dank!

@TripleU Es gab eine Reihe von Anfragen hier auf Meta, in denen nach einer Option gefragt wurde, das unendliche Scrollen zugunsten der Paginierung zu deaktivieren. Erreicht dieses Plugin dies?

1 „Gefällt mir“

Dumbcourse hat diese Option (noch nicht, falls die Leute sie wirklich wollen….).

4 „Gefällt mir“

Gepusht!

2 „Gefällt mir“

Darf ich vorschlagen, den Pfad (vielleicht sogar den Plugin-Namen) in etwas weniger beleidigendes zu ändern. Wie simple, basic.

Denn das ist keine dumme Funktion, es ist eigentlich ziemlich clever, eine Oberfläche mit geringer Wiedergabetreue zu haben.

1 „Gefällt mir“

Du bist etwas spät dran :grin:

4 „Gefällt mir“

Das macht großen Spaß, und ich liebe den Namen, denn es steckt eine Technikgeschichte dahinter, und ich finde ihn überhaupt nicht beleidigend – aber die Bereitstellung der Routeneinstellung ist eine großartige Ergänzung.

Jedenfalls, wo wir gerade von dumm reden, ich biete dagegen:

4 „Gefällt mir“

Oh, das wirft eine Frage auf: wie werden Bilder und eingebettete Medien behandelt? Werden sie verlinkt, unterdrückt oder gerendert, …?

3 „Gefällt mir“

Bilder, Videos, Audio und Iframes werden alle inline im Beitragstext gerendert, wobei ihre URLs auf die korrekte Asset-Basis umgeschrieben werden.

2 „Gefällt mir“

Beim Testen

1 „Gefällt mir“

Großartig! Das scheint also ein guter Weg zu sein, um unsere Foren für alte Browser (alte Computer, alte Telefone, alte Tablets) verfügbar zu machen, wie in Nates Beitrag oben erwähnt.

Gibt es eine Möglichkeit für einen Benutzer, eine Präferenz festzulegen, damit er automatisch in dieser Darstellung eingeschrieben wird? (Vorzugsweise mit dem gewählten Namen bezeichnet, nicht unbedingt „dumm“.)

Das ist in Ordnung, aber wenn man darüber nachdenkt, ist es nicht wichtig. Wenn man dies in einem Altenheim, einem Erwachsenenbildungszentrum oder in vielen anderen Kontexten einführen wollte, in denen Menschen benachteiligt oder nicht technisch versiert oder einfach nicht jung oder keine englischen Muttersprachler sind, dann wäre es eine wirklich schlechte Außendarstellung, wenn es als „dumm“ bezeichnet wird. Es geht nicht darum, ob Sie sich beleidigt fühlen oder nicht, und es ist auch nicht die Sorge des Seitenadministrators, sondern des potenziellen Endbenutzers.

2 „Gefällt mir“

Ich bin verwirrt. Sie können einfach die URL des gewählten Pfades besuchen. Meinen Sie etwas anderes?

Ed, nimm mich bitte nicht für dumm, natürlich verstehe ich das. Ich höre jetzt auf, weil das eine lästige Büchse der Pandora ist …

4 „Gefällt mir“