Estoy construyendo algo orientado a la comunidad y Discourse parece perfecto para ello.
Pero mi plan final es migrar la comunidad a una aplicación personalizada más adelante. Tengo curiosidad si alguien lo ha hecho antes y qué tan difícil o fácil sería hacerlo. No quiero quedarme bloqueado en el ecosistema.
Depende de lo que signifique “portar la comunidad a una aplicación personalizada más adelante”.
Si quieres migrar de Discourse a una base de datos + backend + frontend + etc. hecha a medida, una migración de datos es el camino.
Si quieres seguir usando las capas de datos y backend de Discourse, usándolo como un servicio headless y escribiendo un nuevo frontend que consuma las APIs existentes, eso también es posible y se ha hecho antes.
Sin embargo, una cosa a considerar es que Discourse es ENORME, realmente ENORME. La función de chat, por ejemplo, es una gran empresa, y es solo una pequeña fracción de lo que es Discourse.
Reescribir estas interfaces de usuario sin duda se sentirá como reinventar la rueda, y una vez que tengas todas estas funciones dadas por sentadas en tu comunidad, será difícil migrar a una aplicación personalizada que carezca de ellas.
Muchas gracias por tu respuesta. ¿Tienes algún ejemplo / caso de estudio sobre esto? ¿Algún sitio web/aplicación que utilice Discourse de forma headless?
¡Esto es fantástico! Muchas gracias por compartir esto.
He estado navegando por algunas discusiones sobre personas que intentan construir una red social completa en Discourse. Si tienes algún ejemplo de esos, házmelo saber. Todavía no me he encontrado con una implementación seria de Discourse en la web que no parezca un foro.
También añadiría los enormes desafíos no técnicos de ganar tracción, atraer usuarios, dar a conocer la noticia, marketing… conjunto de características: ¿qué ofreces que le da a la gente algo que no puede obtener de las aplicaciones convencionales? Ah, y finanzas… tiempo…
Al menos los foros pueden encajar en pequeños nichos para atraer a una audiencia… y no dependen de un personal masivo.
No hay daño en intentarlo: ¡quien no arriesga, no gana! (¡y probablemente no aprende nada!)
¿Puedes compartir algunos de tus hallazgos, por favor? ¿Tienes alguna idea de lo difícil que es desarrollar funcionalidades de complejidad simple y media? Supongo que los desarrolladores necesitan tener experiencia con la pila tecnológica. Pero luego necesitan descifrar el funcionamiento de la plataforma y luego empezar a armar y construir? Aparte de los ejemplos dados en los comentarios, ¿se hace mucho esto? ¿Por qué/por qué no?
Duplicación seguida de sobrecarga de mantenimiento, incluyendo tener que adaptarse a cambios importantes en el núcleo.
Además, si abandonas el ecosistema, no podrás usar complementos ni componentes de temas, ¡vaya!
¿Mucho más fácil implementar toda la lógica de tu comunidad con Discourse tal cual? (para la gran mayoría de los casos de uso) y añadir personalizaciones según sea necesario en temas y complementos.
Como prueba, solo mira la multitud de empresas que utilizan Discourse para gestionar comunidades.
No me malinterpretes, no hay una respuesta perfecta aquí. Quizás podrías hacerlo funcionar, pero ten en cuenta los riesgos, las compensaciones y los costos.