Dumbcourse – Interface amigável para navegadores antigos em /dumb (D-pad + telas pequenas)

| :information_source: | Resumo | O Dumbcourse adiciona uma interface de usuário (UI) leve e compatível com navegadores antigos do Discourse em /dumb, projetada para navegação por D-pad, telas pequenas e WebViews Android antigas onde a UI padrão do Discourse pode ser muito pesada. |
| :hammer_and_wrench: | Link do Repositório | https://github.com/TripleU613/dumbcourse |
| :open_book: | Guia de Instalação | Como instalar plugins no Discourse |


Funcionalidades

  • Serve uma SPA mínima em /dumb no mesmo domínio do Discourse
  • ES5 / sem etapa de compilação; DOM/JS/CSS intencionalmente mínimos para navegadores e WebViews mais antigos
  • Usa endpoints JSON do Discourse de mesma origem e cookies de sessão padrão do Discourse
  • Listas de tópicos: latest, new, top, unseen, hot, my, mais categorias
  • Visualização de categoria: /dumb/c/:slug/:id
  • Leitura e postagem de tópicos (resposta/citação/reações)
  • Pesquisa e visualizações básicas de perfil
  • Navegação amigável ao D-pad com elementos de UI focáveis

Configuração

  1. Instale o plugin

    • Adicione o repositório em containers/app.yml sob hooks -> after_code, depois reconstrua o container.
  2. Habilite-o

    • Vá para Admin → Plugins → Dumbcourse
    • Habilite dumbcourse_enabled
  3. Escolha os padrões

    • Defina o tema padrão e a visualização de destino padrão (veja as Configurações abaixo).
  4. Verifique

    • Visite: https://SEU_DOMINIO_DO_FORUM/dumb
    • Usuários anônimos devem ser direcionados para /dumb/login
    • Usuários logados devem ver a visualização padrão configurada

Capturas de Tela

Navegador antigo / UI padrão do Discourse

UI do Dumbcourse

Em um tópico

Ações/seleção de postagem

Menu básico

Configurações do Plugin


Status / Limitações Conhecidas

Este projeto está atualmente em beta (a implementação inicial foi feita rapidamente), então espere arestas. Contribuições e revisão de código são bem-vindas.

Lacunas atuais / perguntas em aberto:

  • Cadastro + CAPTCHA: a criação de conta depende do fluxo de cadastro padrão do Discourse, mas o comportamento do CAPTCHA pode variar de acordo com a configuração do site.
  • Revisão de segurança: a UI simplificada não deve contornar as permissões do Discourse, mas ainda não passou por uma revisão de segurança completa. Por favor, relate quaisquer preocupações ou comportamentos suspeitos.
  • UX de moderação/admin: as ferramentas de moderação e administração são mínimas hoje; expandir isso com segurança está no roteiro.
  • Interações de toque + D-pad: a entrada por toque pode entrar em conflito com a navegação por foco em alguns dispositivos; melhorias estão planejadas.
  • Compartilhamento de links: /dumb fornece uma UI alternativa, o que levanta questões sobre o compartilhamento de links canônicos entre usuários “dumb” e padrão. Uma abordagem consistente ainda está sendo refinada.

Créditos

Agradecimentos especiais a @ars18 (GitHub: https://github.com/alltechdev) por contribuições importantes e por ajudar a dar início à ideia original.


Configurações

Nome Descrição
dumbcourse_enabled Alternância mestre de ligar/desligar para o Dumbcourse.
dumbcourse_default_theme Tema padrão para /dumb (dark / light).
dumbcourse_default_view Visualização de destino padrão (latest / new / top / unseen / hot / my / categories).
dumbcourse_sidebar_link_enabled Adiciona um link na barra lateral para /dumb.