Dumbcourse – Interface conviviale pour anciens navigateurs sur /dumb (D-pad + petits écrans)

:information_source: Résumé Dumbcourse ajoute une interface utilisateur Discourse légère et compatible avec les anciens navigateurs sous /dumb, conçue pour la navigation au D-pad, les petits écrans et les WebViews Android plus anciens où l’interface utilisateur standard de Discourse peut être trop lourde.
:hammer_and_wrench: Lien du dépôt https://github.com/TripleU613/dumbcourse
:open_book: Guide d’installation Comment installer des plugins dans Discourse


Ce projet a été rendu possible grâce au travail de @ars18 :

Le projet original utilise un proxy Cloudflare worker pour servir les forums, et le plugin dumbcourse l’intègre entièrement dans votre instance discourse.


Fonctionnalités

  • Sert une SPA minimale à /dumb sur le même domaine Discourse
  • ES5 / pas d’étape de construction ; DOM/JS/CSS intentionnellement minimal pour les anciens navigateurs et WebViews
  • Utilise les points de terminaison JSON Discourse en même origine et les cookies de session Discourse standard
  • Listes de sujets : latest, new, top, unseen, hot, my, plus les catégories
  • Vue de catégorie : /dumb/c/:slug/:id
  • Lecture et publication de sujets (réponse/citation/réactions)
  • Recherche et vues de profil de base
  • Navigation adaptée au D-pad avec des éléments d’interface utilisateur focalisables

Configuration

  1. Installer le plugin

    • Ajoutez le dépôt à containers/app.yml sous hooks -> after_code, puis reconstruisez le conteneur.
  2. L’activer

    • Allez dans Admin → Plugins → Dumbcourse
    • Activez dumbcourse_enabled
  3. Choisir les valeurs par défaut

    • Définissez le thème par défaut et la vue d’atterrissage par défaut (voir Paramètres ci-dessous).
  4. Vérifier

    • Visitez : https://VOTRE_DOMAINE_FORUM/dumb
    • Les utilisateurs anonymes devraient atterrir sur /dumb/login
    • Les utilisateurs connectés devraient voir la vue par défaut configurée

Captures d’écran

Ancien navigateur / Interface Discourse standard

Interface Dumbcourse

Dans un fil de discussion

Actions/sélection de publication

Menu de base

Paramètres du plugin


Statut / Limitations connues

Ce projet est actuellement en bêta (l’implémentation initiale a été faite rapidement), donc attendez-vous à des imperfections. Les contributions et les revues de code sont les bienvenues.

Lacunes actuelles / questions ouvertes :

  • Inscription + CAPTCHA : la création de compte repose sur le flux d’inscription standard de Discourse, mais le comportement du CAPTCHA peut varier en fonction de la configuration du site.
  • Revue de sécurité : l’interface utilisateur simplifiée ne devrait pas contourner les permissions de Discourse, mais elle n’a pas encore fait l’objet d’une revue de sécurité approfondie. Veuillez signaler toute préoccupation ou comportement suspect.
  • UX de modération/administration : les outils de modération et d’administration sont minimes aujourd’hui ; leur expansion en toute sécurité est à l’étude.
  • Interactions tactile + D-pad : l’entrée tactile peut entrer en conflit avec la navigation par focus sur certains appareils ; des améliorations sont prévues.
  • Partage de liens : /dumb fournit une interface utilisateur alternative, ce qui soulève des questions sur le partage de liens canoniques entre les utilisateurs « dumb » et standard. Une approche cohérente est toujours en cours d’élaboration.

Crédits

Remerciements spéciaux à @ars18 (GitHub : https://github.com/alltechdev) pour ses contributions clés et pour avoir aidé à lancer l’idée originale.


Paramètres

Nom Description
dumbcourse_enabled Interrupteur principal marche/arrêt pour Dumbcourse.
dumbcourse_default_theme Thème par défaut pour /dumb (dark / light).
dumbcourse_default_view Vue d’atterrissage par défaut (latest / new / top / unseen / hot / my / categories).
dumbcourse_sidebar_link_enabled Ajoute un lien dans la barre latérale vers /dumb.

13 « J'aime »

Cela semble être une excellente idée !

Je n’aime pas l’apparition du nom dans les URL par contre - peut-on le rendre configurable, par exemple /simple/ au lieu de /dumb/ ?

(En vérité, je ne suis pas très satisfait du nom, mais si on peut le configurer, ça aide. C’est une insulte, et c’est plutôt idiomatique.)

3 « J'aime »

Wow, ça a l’air vraiment bien ! On dirait qu’il y a une solution aux frustrations de certains utilisateurs dues à la non-prise en charge des anciens navigateurs dans Dropping iOS 15 & other old browsers in July 2025.

Dans le monde des téléphones basiques, c’est accepté, mais oui, j’ajouterai un paramètre pour cela.

2 « J'aime »

J’ai récemment implémenté l’ajout des paramètres admin/mod. La file d’attente de révision nécessite encore du travail.

Captures d'écran

2 « J'aime »

J’ai oublié de mentionner, voici l’APK Android compagnon.

Prend en charge Android 6+ et Chrome WebView 44+.

Exemple (notre apk de forums)

1 « J'aime »

Voilà.

3 « J'aime »

Travail rapide… merci beaucoup !

@TripleU Il y a eu un certain nombre de demandes ici sur Meta demandant une option pour désactiver le défilement infini au profit de la pagination. Ce plugin y parvient-il ?

Dumbcourse n’a pas cette option (pour l’instant, si les gens la veulent vraiment…).

1 « J'aime »

Poussé !

Puis-je suggérer de changer le chemin (peut-être même le nom du plugin) pour quelque chose de moins insultant. Comme simple, basique.

Parce que ce n’est pas une fonctionnalité stupide, c’est en fait assez intelligent d’avoir une interface à faible fidélité.

1 « J'aime »

Vous êtes un peu en retard :grin:

3 « J'aime »

C’est très amusant, et j’adore le nom, car il y a une histoire d’ingénierie derrière, et je ne le trouve pas du tout insultant - mais la fourniture du réglage de l’itinéraire est un ajout fabuleux.

Enfin, en parlant de bêtises, je vous propose :

2 « J'aime »

Oh, cela soulève une question : quel est le traitement des images et des médias intégrés ? Sont-ils transformés en liens, supprimés, rendus,… ?

2 « J'aime »

Les images, vidéos, audios et iframes sont tous rendus en ligne dans le corps de la publication avec leurs URL réécrites vers la base d’actifs correcte.

1 « J'aime »

En test

Splendide ! Cela semble donc être un bon moyen de rendre nos forums disponibles sur les anciens navigateurs (anciens ordinateurs, anciens téléphones, anciennes tablettes) comme indiqué dans la publication de Nate ci-dessus.

Existe-t-il un moyen pour un utilisateur de définir une préférence afin qu’il s’inscrive automatiquement à cette présentation ? (De préférence appelée par le nom choisi, pas nécessairement « dumb ».)

C’est bien, mais si vous y réfléchissez, ce n’est pas important. Si l’on voulait déployer cela dans une maison de retraite, un centre de formation pour adultes, ou dans de nombreux contextes où les gens sont désavantagés ou peu technophiles, ou simplement pas jeunes, ou pas locuteurs natifs de l’anglais, alors le fait que ce soit étiqueté « dumb » (stupide/simple) aura de très mauvaises répercussions. Ce n’est pas votre insulte ou votre absence d’insulte qui compte, ni la préoccupation de l’administrateur du site, mais l’utilisateur final potentiel.

Je suis confus. Ils peuvent simplement visiter l’URL du chemin choisi. Voulez-vous dire autre chose ?

Ed, ne me prends pas pour une idiote, bien sûr que je comprends ça. Je vais m’arrêter maintenant parce que c’est une boîte de Pandore irritante…

3 « J'aime »