Преимущества и недостатки использования темы вместо плагина для кастомизации

Благодаря добавлению разделения JavaScript темы на несколько файлов, вы можете эффективно делать всё, что умеет плагин через Ember, используя только тему.

Таким образом, если вам не нужно создавать маршруты, изменять сериализаторы или хранить пользовательские данные, скорее всего, вы сможете достичь своей цели, используя только тему.

Самая большая проблема, с которой мы сталкиваемся при поддержке пользовательских плагинов, — это сбои работы сайта. Обычно это происходит потому, что плагин внедряет изменения в класс или метод Rails в ядре, которые были изменены, но плагин ещё не обновлён с учётом этих изменений. Если что-то изменится на стороне Ember и тем самым нарушит работу темы или компонента темы, сайт может отобразиться некорректно, но его можно быстро отключить с помощью /safe-mode.

Я понимаю вашу точку зрения. Также стоит отметить, что этот gem позволяет разрабатывать тему локально и синхронизировать её с любым сайтом Discourse, к которому у вас есть API-ключ, включая theme-creator.discourse.org. Вам даже не нужно настраивать локальное окружение разработки, если у вас запущен этот gem.