Dumbcourse – Interfaz amigable para navegadores antiguos en /dumb (D-pad + pantallas pequeñas)

:information_source: Resumen Dumbcourse añade una interfaz de usuario de Discourse ligera y compatible con navegadores antiguos bajo /dumb, diseñada para la navegación con D-pad, pantallas pequeñas y WebViews antiguos de Android donde la interfaz de usuario estándar de Discourse puede ser demasiado pesada.
:hammer_and_wrench: Enlace al Repositorio https://github.com/TripleU613/dumbcourse
:open_book: Guía de Instalación Cómo instalar plugins en Discourse


Este proyecto fue posible gracias al trabajo de @ars18:

El proyecto original utiliza un proxy de Cloudflare worker para servir los foros, y el plugin dumbcourse lo integra completamente en tu instancia de Discourse.


Características

  • Sirve una SPA mínima en /dumb en el mismo dominio de Discourse
  • ES5 / sin paso de compilación; DOM/JS/CSS intencionalmente mínimos para navegadores y WebViews antiguos
  • Utiliza los endpoints JSON de Discourse de mismo origen y las cookies de sesión estándar de Discourse
  • Listas de temas: latest, new, top, unseen, hot, my, más categorías
  • Vista de categoría: /dumb/c/:slug/:id
  • Lectura y publicación de temas (respuesta/cita/reacciones)
  • Búsqueda y vistas de perfil básicas
  • Navegación apta para D-pad con elementos de interfaz de usuario enfocables

Configuración

  1. Instalar el plugin

    • Añade el repositorio a containers/app.yml bajo hooks -> after_code, luego reconstruye el contenedor.
  2. Habilitarlo

    • Ve a Administrador → Plugins → Dumbcourse
    • Habilita dumbcourse_enabled
  3. Elegir valores predeterminados

    • Establece el tema predeterminado y la vista de aterrizaje predeterminada (ver Configuración más abajo).
  4. Verificar

    • Visita: https://TU_DOMINIO_DEL_FORO/dumb
    • Los usuarios anónimos deberían aterrizar en /dumb/login
    • Los usuarios con sesión iniciada deberían ver la vista predeterminada configurada

Capturas de Pantalla

Navegador antiguo / Interfaz de usuario estándar de Discourse

Interfaz de usuario de Dumbcourse

En un hilo

Acciones/selección de publicaciones

Menú básico

Configuración del plugin


Estado / Limitaciones conocidas

Este proyecto se encuentra actualmente en beta (la implementación inicial se hizo rápidamente), así que espera algunos detalles sin pulir. Se agradecen las contribuciones y la revisión de código.

Brechas conocidas actuales / preguntas abiertas:

  • Registro + CAPTCHA: la creación de cuentas depende del flujo de registro estándar de Discourse, pero el comportamiento del CAPTCHA puede variar según la configuración del sitio.
  • Revisión de seguridad: la interfaz de usuario simplificada no debería eludir los permisos de Discourse, pero aún no ha tenido una revisión de seguridad exhaustiva. Por favor, informa cualquier inquietud o comportamiento sospechoso.
  • Experiencia de usuario de moderación/administración: las herramientas de moderación y administración son mínimas hoy; expandir esto de forma segura está en el plan.
  • Interacciones táctiles + D-pad: la entrada táctil puede entrar en conflicto con la navegación por enfoque en algunos dispositivos; se planean mejoras.
  • Compartir enlaces: /dumb proporciona una interfaz de usuario alternativa, lo que plantea preguntas sobre cómo compartir enlaces canónicos entre usuarios “tontos” y estándar. Todavía se está refinando un enfoque consistente.

Créditos

Agradecimiento especial a @ars18 (GitHub: https://github.com/alltechdev) por contribuciones clave y por ayudar a iniciar la idea original.


Configuración

Nombre Descripción
dumbcourse_enabled Interruptor maestro de encendido/apagado para Dumbcourse.
dumbcourse_default_theme Tema predeterminado para /dumb (dark / light).
dumbcourse_default_view Vista de aterrizaje predeterminada (latest / new / top / unseen / hot / my / categories).
dumbcourse_sidebar_link_enabled Añade un enlace en la barra lateral a /dumb.

13 Me gusta

¡Esto suena como una idea excelente!

Sin embargo, no me gusta que el nombre aparezca en las URL; ¿puede ser configurable, por ejemplo, para usar /simple/ en lugar de /dumb/?

(En realidad, no estoy muy contento con el nombre, pero si se puede configurar ayuda. Es un insulto, y es bastante idiomático).

3 Me gusta

¡Vaya, esto se ve muy bien! Parece que hay una solución a las frustraciones de algunos usuarios debido a que los navegadores antiguos no son compatibles en Dropping iOS 15 & other old browsers in July 2025.

En el mundo de los teléfonos básicos se acepta, pero sí, añadiré una configuración para eso.

2 Me gusta

Recientemente implementé la adición de configuraciones de administrador/moderador. La cola de revisión todavía necesita algo de trabajo.

Capturas de pantalla

2 Me gusta

Olvidé mencionar, aquí está el APK complementario de Android.

Admite Android 6+ y Chrome WebView 44+.

Muestra (nuestro apk de foros)

1 me gusta

Ahí lo tienes.

3 Me gusta

Trabajo rápido… ¡muchas gracias!

@TripleU Ha habido varias solicitudes aquí en Meta que han pedido una opción para deshabilitar el desplazamiento infinito en favor de la paginación. ¿Este complemento lo logra?

Dumbcourse no tiene esa opción (aún, si la gente realmente la quiere…).

1 me gusta

¡Enviado!

¿Podría sugerir cambiar la ruta (quizás incluso el nombre del complemento) a algo menos ofensivo. Como simple, básico.

Porque esta no es una característica tonta, en realidad es bastante inteligente tener una interfaz de baja fidelidad.

1 me gusta

Llegas un poco tarde :grin:

3 Me gusta

Esto es muy divertido, y me encanta el nombre, porque tiene historia de ingeniería detrás y no lo encuentro ofensivo en absoluto, pero la provisión de la configuración de la ruta es una adición fabulosa.

De todos modos, hablando de tonto, te propongo:

2 Me gusta

Oh, eso plantea una pregunta: ¿cuál es el tratamiento de las imágenes y los medios incrustados? ¿Se convierten en enlaces, se suprimen o se representan,…?

2 Me gusta

Las imágenes, videos, audio e iframes se representan en línea en el cuerpo de la publicación con sus URL reescritas a la base de activos correcta.

1 me gusta

En pruebas

¡Espléndido! Entonces, esta parece una buena manera de hacer que nuestros foros estén disponibles en navegadores antiguos (computadoras antiguas, teléfonos antiguos, tabletas antiguas), como se señala en la publicación anterior de Nate.

¿Hay alguna manera de que un usuario establezca una preferencia para inscribirse automáticamente en esta presentación? (Preferiblemente llamada por el nombre elegido, no necesariamente “tonta” [dumb]).

Eso está bien, pero si lo piensas, no es importante. Si uno quisiera implementar esto en una residencia de ancianos, o en un centro de formación para adultos, o en cualquier número de contextos donde las personas están en desventaja o no tienen conocimientos técnicos o simplemente no son jóvenes, o no son hablantes nativos de inglés, entonces tenerlo etiquetado como ‘tonto’ [dumb] tendrá muy mala imagen. Lo que importa no es si tú te sientes ofendido o no, ni es preocupación del administrador del sitio, sino del posible usuario final.

Estoy confundido. Simplemente pueden visitar la URL de la ruta elegida. ¿Quieres decir otra cosa?

Ed, por favor, no me tomes por tonto, por supuesto que lo entiendo. Me detendré ahora porque esto es un irritante problema sin fin…

3 Me gusta