RabbitMQ 3.13.0 新网站
我们已经花费数周时间开发 RabbitMQ 的新网站。我们计划在 RabbitMQ 3.13.0 发布后不久发布此重大升级!此时,我们非常希望 **您能 访问新网站** 并告诉我们您的想法 :-)
在这篇博文中,我将介绍我们这样做的原因以及它将为您带来哪些改进。
当前网站的限制
仅记录最新 RabbitMQ 版本
在撰写本文时,www.rabbitmq.com 网站包含 RabbitMQ 服务器的文档、一些 AMQP 客户端,并提供教程以帮助您开始使用 RabbitMQ。
文档仅涵盖 RabbitMQ 的最新版本 - 当前为 3.12.x。到目前为止,这还可以,因为新的发布系列通常会带来新的功能。但是,随着即将发布的 RabbitMQ 4.0.x,一些重要的已弃用功能将被删除!如果我们继续这样,这意味着这些已删除功能的文档将消失。对于那些将在一段时间内继续运行 RabbitMQ 3.12.x 的人来说,这是一个真正的问题。
这是我们希望升级网站的首要原因:我们希望文档涵盖 RabbitMQ 的多个版本:旧版本、当前版本和即将发布的版本。
我们可以拍摄网站快照并将其发布到其他地方,例如过去在 previous.rabbitmq.com 上发布。但是 Git 存储库/工作流程和自制框架使得这并不容易,因此我们停止保留旧版本的快照。如果工作流程和工具能够轻松维护多个版本,并且所有版本都以用户可以轻松切换到其正在运行的任何版本的方式发布到 www.rabbitmq.com,那么我们会做得更好。
这让我想到重大升级背后的第二个原因。
内部框架
该网站是静态生成的并发布到 Cloudflare worker。我们使用的静态生成器是十年前由 RabbitMQ 团队开发的,从那时起几乎没有发展。
制作或维护网站框架绝对不是投资我们时间的最佳方式。RabbitMQ 本身还有很多工作要做 :-) 因此,与其向其中添加多个版本的支持,我们不如查看现有的具有此功能的 FOSS 静态网站生成器,并评估了其中的一些。
我们选择了 Docusaurus。它支持多个版本 - 我们的主要标准 - 并且它使用 Markdown 作为标记语言,因此我们无需重写任何内容。这将使转换更容易。
“这对我有何好处?”
使用 Docusaurus,我们 RabbitMQ 团队可以轻松地完成工作,耶 \o/ 但是“这对您有什么好处”,您可能会问?
记录多个版本
当然,您将能够阅读 RabbitMQ 过去和新版本的文档,甚至在开发过程中阅读未来版本的文档。
最初,它只会涵盖 RabbitMQ 3.13.x,因为我们没有将以前的版本转换为 Docusaurus。RabbitMQ 3.12.x 文档的快照将发布到 previous.rabbitmq.com。
我们计划在新网站上保留所有受支持的 RabbitMQ 版本文档。当旧发布系列达到生命周期结束时,其文档也将移动到 previous.rabbitmq.com。这样做是为了避免版本下拉列表变得过于杂乱或搜索功能返回太多不太相关的结果。
说到搜索……
集成的搜索功能
Docusaurus 集成了多种解决方案来提供内部搜索功能。我们选择了 Algolia,因为它非常高效并且可以很好地与多个版本配合使用。
整个网站(包括博客)都将被索引并可搜索。在上面的示例中,我搜索了“MQTT”,Algolia 在结果中返回了博客文章和文档页面。
但是,在屏幕截图上不明显的是,它只返回了我正在浏览的当前版本的文档!因此,如果我在下拉版本菜单中选择了假设的 RabbitMQ 5.2.x,我只会获得与该版本相关的结果。
集成的博客
如上所述,Docusaurus 提供了一个博客。我们将切换到它并停止使用 blog.rabbitmq.com。这样,所有与 RabbitMQ 相关的内容都将位于一个位置
- 浏览和在博客文章和文档之间移动将变得更容易。
- 如前所述,内部搜索将同时考虑文档和博客文章。
- 对于内容撰写者来说,在博客文章和文档之间进行交叉引用将变得更容易。
移动版本和深色模式
Docusaurus 比我们内部框架稍微现代一些,因此新网站应该可以在小屏幕和移动设备上舒适地浏览。
它还带有深色模式!
结论
我们对转向 Docusaurus 以及新网站将为您带来的所有功能感到非常兴奋!除了转换为新框架之外,我们还计划对内容本身进行许多改进!例如……不,让我们在新网站上的未来博文中讨论这些内容,一旦我们有东西可以展示 :-)
同时,我们非常希望收到您的反馈!我们知道转换后存在一些粗糙的边缘,有些部分我们无法轻松地映射到 Docusaurus 的替代方案。那么,您是否觉得新网站很方便?您在旧网站上喜欢的任何东西都丢失了吗?
以下是一些可以帮助您的链接
非常感谢您分享的任何建设性正面或负面评论!