Mit der Möglichkeit, Theme-JavaScript in mehrere Dateien aufzuteilen, können Sie mit einem Theme praktisch alles erreichen, was auch ein Plugin mit Ember leistet.
Wenn Sie also keine Routen erstellen, Serialisierer ändern oder benutzerdefinierte Daten speichern müssen, können Ihr Ziel wahrscheinlich allein mit einem Theme erreichen.
Die größte Herausforderung, die wir aus Support-Sicht bei benutzerdefinierten Plugins sehen, sind Ausfälle der Website. Dies liegt meist daran, dass das Plugin in eine Rails-Klasse oder eine Methode im Kern eingreift, die sich geändert hat, und das Plugin noch nicht aktualisiert wurde, um dies zu berücksichtigen. Wenn sich etwas auf der Ember-Seite ändert und dadurch das Theme oder eine Theme-Komponente fehlschlägt, wird die Website möglicherweise nicht korrekt gerendert, kann aber schnell über /safe-mode deaktiviert werden.
Ich verstehe Ihren Punkt. Ich würde zudem sagen, dass das Gem es Ihnen ermöglicht, Ihr Theme lokal zu entwickeln und es mit jeder Discourse-Website zu synchronisieren, für die Sie einen API-Schlüssel haben, einschließlich theme-creator.discourse.org. Sie benötigen nicht einmal eine lokale Entwicklungsumgebung, solange dieses eine Gem läuft.