Quão fácil é portar a comunidade Discourse para um webapp personalizado posteriormente?

Estou construindo algo voltado para a comunidade e o Discourse parece perfeito para isso.

Mas meu plano final é migrar a comunidade para um aplicativo personalizado mais tarde. Estou curioso para saber se alguém já fez isso antes e quão difícil/fácil seria fazê-lo. Não quero ficar preso ao ecossistema.

Isso seria em grande parte uma migração de dados como qualquer outra.

As tabelas são autoexplicativas?

Ou você poderia fazer tudo via API e construir seu próprio front-end, mantendo a estrutura do banco de dados e o back-end do Discourse…

1 curtida

Depende do que significa “portar a comunidade para um aplicativo personalizado mais tarde”.

Se você quiser migrar do Discourse para um banco de dados + backend + frontend + etc. feito sob medida, uma migração de dados é o caminho.

Se você quiser continuar usando as camadas de dados e backend do Discourse, usando-o como um serviço headless e escrevendo um novo frontend que consuma as APIs existentes, isso também é possível e já foi feito antes.

Uma coisa a considerar, no entanto, é que o Discourse é ENORME, tipo REALMENTE ENORME. O recurso de chat, por exemplo, é um grande empreendimento, e é apenas uma pequena fração do que é o Discourse.

Reescrever essas interfaces de usuário certamente parecerá reinventar a roda, e uma vez que você tenha todos esses recursos como garantidos em sua comunidade, será difícil migrar para um aplicativo personalizado que os esteja perdendo.

9 curtidas

Muito obrigado pela sua resposta. Você tem algum exemplo / estudo de caso sobre isso? Algum site/aplicativo que usa o Discourse de forma headless?

5 curtidas

Isto é fantástico! Muito obrigado por compartilhar estes.

Tenho pesquisado algumas discussões sobre pessoas tentando construir uma rede social completa no Discourse. Se você tiver algum exemplo, me avise. Ainda não encontrei uma implementação séria do Discourse na web que não pareça um fórum.

1 curtida

Considere também a Federação e dê uma olhada em:

Há também um aplicativo Whitelisted para iOS e Android que utiliza React Native e Webview:

1 curtida

Bem dito.

Eu também acrescentaria os enormes desafios não técnicos de ganhar tração, atrair usuários, divulgar, marketing… conjunto de recursos - o que você está oferecendo que dá às pessoas algo que elas não podem obter dos aplicativos convencionais? Ah, e finanças… tempo…

Pelo menos os fóruns podem se encaixar em pequenos nichos para atrair um público… e não dependem de uma equipe enorme.

Não há mal em tentar: quem não arrisca, não petisca! (e provavelmente não aprende nada!)

Obrigado pela resposta. Aprecio muito o seu tempo.

Precisamente para mitigar riscos em desafios não técnicos, quero optar pelo Discourse.

1 curtida

Eu não sabia que havia uma proposta de federação — isso seria muito legal. Obrigado por compartilhar.

2 curtidas

Olá Paras,

Você pode compartilhar algumas de suas descobertas, por favor? Você tem alguma ideia sobre a dificuldade de desenvolver recursos de complexidade simples e média? Imagino que os desenvolvedores precisem ter experiência com a stack. Mas então eles precisam descobrir o funcionamento da plataforma e, em seguida, começar a montar e construir? Além dos exemplos dados nos comentários, isso é feito com frequência? Por quê/por que não?

Obrigado

Ainda não tentei personalizar.

Eu duvido!

Duplicação seguida de sobrecarga de manutenção, incluindo ter que acomodar alterações que quebram o núcleo.

Além disso, saia do ecossistema e você não poderá usar plugins ou componentes de tema, doh!

Muito mais fácil simplesmente implementar toda a sua lógica de comunidade com o Discourse como está? (para a vasta maioria dos casos de uso) e adicionar personalizações conforme necessário em temas e plugins.

Como prova, basta olhar para a infinidade de empresas que usam o Discourse para lidar com a comunidade.

2 curtidas

Obrigado, Robert!

Não parecia fácil, mas queria verificar mesmo assim.

Atenciosamente,

2 curtidas

Não me entenda mal, não há uma resposta perfeita aqui. Talvez você consiga fazer funcionar, mas esteja ciente dos riscos, das compensações e dos custos.

1 curtida

Olá Robert, sim, eu entendo. É uma decisão complicada, no entanto, neste momento, é o suficiente saber o quão complicada isso pode ser, etc.

1 curtida