Discourse のショートコードのようなもの?

最近、MDX を発見しました。これを使えば、JSX を用いて Markdown 内に動的なコンポーネントを埋め込むことができます。

Discourse の投稿でも同様のことを実現するのはどれくらい難しいか気になっています。

投稿内にショートコード風の断片を埋め込むことで、ユーザーがフォーラム内でゲームを開始できるようにしたいと考えています。

本日のゲームです。最高得点を目指して競い合いましょう。

[game type="whatever" prop2="something" expires="midnight"]

このタグが動的な JavaScript ゲームに置き換わるようにしたいです。スコアはデータベースに保存するか、バックエンドから Firebase に送信するようにします。

このような機能を提供する既存のものや、実装のアイデアとなるオープンソースのプラグインをご存知の方はいますか?

「いいね!」 2

BBCode プラグインと、トピックテンプレートのプレースホルダーテキストを扱うテーマコンポーネント があり、これらは良い出発点となります。ただし、Discourse プラグイン作成入門ガイド 第 1 部:基本的なプラグインの作成 について、それなりの知識が必要になります。

「いいね!」 3

ありがとうございます。私が探しているものの例が含まれているかもしれないカレンダープラグインを見つけました(カスタム Markdown タグやいくつかのバックエンドコントローラーなど)。また、Markdown 拡張ガイドも見つけましたが、まだ詳しくは読んでいません。

もしモーダル内に iframe を読み込んで postMessage を使ってスコアを通信できるなら、ゲームをサイトの MDX ページにも埋め込めるかもしれません。実際に試してみます。

「いいね!」 2