Nota: Esta é apenas uma ideia que quero deixar para vocês refletirem, e não uma solicitação de recurso ‘oficial’ da minha parte ![]()
O Discourse possui o excelente plugin oficial Discourse GitHub. Com base nas Configurações, é possível recompensar os membros do fórum por suas contribuições em PRs. No entanto, nem sempre será possível atribuí-las, pois os membros podem não estar associados à conta do GitHub:
Se entendi corretamente, se o e-mail do seu commit no GitHub e/ou seu nome de usuário não corresponderem a uma conta no fórum, pode não haver correspondência e, portanto, nenhum emblema.
Em nossa Comunidade de Tecnologia Humana, há muito tempo não tínhamos logins baseados no GitHub habilitados (adicionei isso muito recentemente), mas possuímos uma organização no GitHub onde colaboramos em repositórios. Portanto, como medida informativa, sempre tivemos um campo de perfil personalizado chamado ‘Conta do GitHub’, para que os membros o preenchessem.
O recurso adicional no Discourse proposto aqui consiste em duas partes:
- Suporte a um campo de perfil oficial ‘Code Forge’, habilitado nas configurações de administrador.
- Se habilitado, verificar (e/ou validar?) o campo ‘Code Forge’ primeiro ao realizar a atribuição de emblemas.
Nota: A terminologia Code Forge é retirada do ForgeFed, uma extensão do protocolo ActivityPub que visa a integração federada de forjas a qualquer repositório, independentemente de localização ou software utilizado (GitHub, GitLab, Gitea, SourceHut, etc.).
Campo de perfil Code Forge verificado
Introdução: Para mim e para muitas pessoas com quem trabalho (e talvez até para o movimento de software livre em geral, creio eu), usar o GitHub para desenvolvimento de OSS não é mais uma certeza. O GitHub não é mais a primeira escolha lógica para hospedar repositórios de código. Por exemplo, eu uso principalmente o Codeberg e tenho contas no GitLab, em várias instâncias auto-hospedadas de GitLab/Gitea, etc. O Feneas, onde sou moderador, usa apenas o GitLab. Gostaria de poder expressar essas diferentes escolhas de forjas de código dentro do Discourse e para os membros da comunidade.
Recurso: Nas configurações de administrador, posso configurar as forjas de código relacionadas à minha comunidade e habilitá-las como campos de perfil. Também posso especificar que desejo que o campo seja verificado e/ou que seja obrigatório (uma extensão adicional a este recurso pode ser omitida). Quando um membro preenche o campo, ele cumpre sua função informativa para os outros membros. Opcionalmente (quando habilitado), a verificação ocorre, ou seja, a pessoa é redirecionada para a forge de código configurada (provavelmente usando um fluxo OAuth, semelhante ao login com GH, então as configurações de administrador para isso devem estar presentes; o ‘login com GH’ ou outra forge não precisa estar habilitado), confirma e retorna ao Discourse. O campo de perfil agora mostra um bonito símbolo de verificação. A interface pode ser semelhante à do Mastodon (embora o método de verificação com rel="me" seja muito diferente), onde é possível adicionar até 4 campos de perfil personalizados:
Relação com o plugin oficial do GitHub do Discourse
Se o campo de perfil estiver presente, e especialmente se for obrigatório e/ou verificado, imagino que ele possa ser usado como o primeiro local para verificar a atribuição de emblemas da Code Forge. As atribuições de emblemas serão baseadas em todas as forjas de código configuradas e não limitadas apenas ao GitHub.
Edição: Usei a atribuição de emblemas como exemplo para melhoria do plugin do GitHub. Mas o próprio plugin poderia se tornar o plugin oficial de Code Forge, dando suporte a todas as forjas configuradas.
