将 Discourse 社区迁移到自定义 Web 应用有多容易?

我正在构建一个面向社区的东西,Discourse 看起来非常适合。

但我的最终计划是以后将社区迁移到一个自定义应用程序。好奇是否有人以前这样做过,以及这样做有多难/容易。不想被锁定在生态系统中。

这与其他任何数据迁移基本相同。

这些表是否不言自明?

或者,您也可以通过 API 完成所有操作,并构建自己的前端,保留 Discourse 的数据库结构和后端……

1 个赞

这取决于“稍后将社区移植到自定义应用程序”是什么意思。

如果您想从 Discourse 迁移到自定义数据库+后端+前端+等等,数据迁移是方法。

如果您想继续使用 Discourse 的数据和后端层,将其用作无头服务并编写一个消耗现有 API 的新前端,这也是可能的,并且以前已经完成过。

不过有一点需要考虑,那就是 Discourse 非常庞大,真的非常庞大。例如,聊天功能是一项艰巨的任务,而它只是 Discourse 的一小部分。

重写这些 UI 肯定会感觉像是重新发明轮子,一旦您在社区中拥有了所有这些理所当然的功能,就很难迁移到一个缺少这些功能的自定义应用程序。

9 个赞

非常感谢您的回复。您有这方面的例子/案例研究吗?有任何网站/应用程序以无头方式使用 Discourse 吗?

5 个赞

太棒了!非常感谢您分享这些。

我一直在浏览一些关于人们尝试在 Discourse 上构建一个功能齐全的社交网络的讨论。如果您有任何这方面的例子,请告诉我。我还没有在网上遇到过严肃的 Discourse 实现,它们看起来不像论坛。

1 个赞

另外,请考虑联合(Federation),并查看:

还有一个适用于 iOS 和 Android 的 Whitelisted App,它利用了 React Native 和 Webview:

1 个赞

说得好。

我还想补充一下获得关注、吸引用户、宣传、营销……功能集等巨大的非技术性挑战——你提供什么能让人们获得主流应用程序无法提供的东西?哦,还有财务……时间……

至少论坛可以融入小的细分市场来吸引受众……而且不依赖庞大的员工。

不过,尝试一下也无妨:不冒险,就无收获!(可能也无所获!)

感谢您的回复。非常感谢您抽出宝贵时间。

正是为了降低非技术性挑战的风险,我想选择 Discourse。

1 个赞

我不知道有联邦的提议——那会很酷。谢谢分享。

2 个赞

Paras,您好:

您能分享一些您的发现吗?您对开发简单和中等复杂度的功能有多难有什么头绪吗?我猜开发人员需要有技术栈的经验。但之后他们需要弄清楚平台的运作方式,然后开始思考和构建?除了评论中给出的例子,这种情况经常发生吗?为什么会这样/为什么不会?

谢谢

还没试过自定义。

我对此表示怀疑!

重复会导致维护开销增加,包括不得不适应核心的重大更改。

最重要的是,如果你离开了生态系统,你就无法使用插件或主题组件,真是的!

对于绝大多数用例来说,仅仅使用 Discourse 来实现你的整个社区逻辑,然后根据需要添加主题和插件中的自定义功能,难道不简单得多吗?

不信的话,看看有多少公司使用 Discourse 来处理社区事务就知道了。

2 个赞

谢谢你,罗伯特!

看起来并不容易,但还是想确认一下。

此致,

2 个赞

别误会我的意思,这里没有完美的正确答案。也许你能让它奏效,但要意识到风险、权衡和成本。

1 个赞

罗伯特,你好,是的,我明白了。这是一个复杂的决定,但现阶段知道这有多复杂就足够了等等。

1 个赞