Dumbcourse – Für alte Browser geeignete Benutzeroberfläche unter /dumb (D-Pad + kleine Bildschirme)

:information_source: Zusammenfassung Dumbcourse fügt unter /dumb eine leichtgewichtige, ältere Browser-freundliche Discourse-UI hinzu, die für D-Pad-Navigation, kleine Bildschirme und ältere Android WebViews konzipiert ist, wo die Standard-Discourse-UI zu schwerfällig sein kann.
:hammer_and_wrench: Repository-Link https://github.com/TripleU613/dumbcourse
:open_book: Installationsanleitung Plugins in Discourse installieren


Dieses Projekt wurde durch die Arbeit von @ars18 ermöglicht:

Das ursprüngliche Projekt verwendet einen Cloudflare Worker Proxy, um die Foren bereitzustellen, und das Dumbcourse-Plugin integriert diesen vollständig in Ihre Discourse-Instanz.


Funktionen

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

Konfiguration

  1. Plugin installieren

    • Fügen Sie das Repository in containers/app.yml unter hooks -> after_code hinzu und bauen Sie dann den Container neu.
  2. Aktivieren

    • Gehen Sie zu Admin → Plugins → Dumbcourse
    • Aktivieren Sie dumbcourse_enabled
  3. Standards festlegen

    • Legen Sie das Standardthema und die Standard-Landingpage fest (siehe Einstellungen unten).
  4. Überprüfen

    • Besuchen Sie: https://IHRE_FORUM_DOMAIN/dumb
    • Anonyme Benutzer sollten auf /dumb/login landen
    • Angemeldete Benutzer sollten die konfigurierte Standardansicht sehen

Screenshots

Alter Browser / Standard Discourse UI

Dumbcourse UI

In einem Thread

Beitragsaktionen / Auswahl

Basis-Menü

Plugin-Einstellungen


Status / Bekannte Einschränkungen

Dieses Projekt befindet sich derzeit im Beta-Stadium (die anfängliche Implementierung erfolgte schnell), daher sind einige Unebenheiten zu erwarten. Beiträge und Code-Reviews sind willkommen.

Aktuell bekannte Lücken / offene Fragen:

  • Registrierung + CAPTCHA: Die Kontoerstellung hängt vom Standard-Registrierungsablauf von Discourse ab, aber das CAPTCHA-Verhalten kann je nach Site-Konfiguration variieren.
  • Sicherheitsüberprüfung: Die vereinfachte UI sollte die Discourse-Berechtigungen nicht umgehen, aber sie wurde noch keiner gründlichen Sicherheitsüberprüfung unterzogen. Bitte melden Sie alle Bedenken oder verdächtiges Verhalten.
  • Moderations-/Admin-UX: Moderations- und Admin-Tools sind derzeit minimal; die sichere Erweiterung dieser ist in der Roadmap vorgesehen.
  • Touch- und D-Pad-Interaktionen: Die Touch-Eingabe kann auf einigen Geräten mit der Fokusnavigation in Konflikt geraten; Verbesserungen sind geplant.
  • Link-Freigabe: /dumb bietet eine alternative UI, was Fragen zur Freigabe kanonischer Links zwischen „dummen“ und Standardbenutzern aufwirft. Ein konsistenter Ansatz wird noch verfeinert.

Danksagungen

Besonderer Dank geht an @ars18 (GitHub: https://github.com/alltechdev) für wichtige Beiträge und die Hilfe beim Anstoßen der ursprünglichen Idee.


Einstellungen

Name Beschreibung
dumbcourse_enabled Haupt-Ein-/Ausschalter für Dumbcourse.
dumbcourse_default_theme Standardthema für /dumb (dark / light).
dumbcourse_default_view Standard-Landingpage (latest / new / top / unseen / hot / my / categories).
dumbcourse_sidebar_link_enabled Fügt einen Sidebar-Link zu /dumb hinzu.

13 „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

2 „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)

1 „Gefällt mir“

Da hast du es.

3 „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?

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

1 „Gefällt mir“

Gepusht!

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:

3 „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:

2 „Gefällt mir“

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

2 „Gefällt mir“

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

1 „Gefällt mir“

Beim Testen

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.

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 …

3 „Gefällt mir“