Tema-Componente vs Plugin: qual è la differenza

Per aggiungere alla risposta di @EricGT, che spiega già molto bene quanto segue:

  • Un tema o un componente di tema è essenzialmente un modo per modificare qualsiasi parte dell’app front-end EmberJS di Discourse. Può essere semplice come personalizzare HTML o CSS, o complesso come aggiungere nuove funzionalità. I temi sono molto più eleganti in caso di errori: significa che l’intero sito non andrà necessariamente in tilt se qualcosa non funziona.
  • Un plugin influisce principalmente sull’app lato server Rails, ma include anche tutta la potenza di un tema e la capacità di modificare l’app EmberJS, sebbene sia molto più complesso. Gli errori nei plugin tendono a essere meno eleganti, quindi se puoi realizzare qualcosa con un tema, inizia da lì. Tuttavia, un plugin è necessario se hai bisogno di una route personalizzata o di memorizzare dati.
  • La pluginAPI è un’API lato client che i temi o i componenti di tema possono utilizzare per modificare più facilmente parti specifiche del client Discourse.

Il punto di partenza migliore per personalizzare il tuo sito è un tema. Ecco alcune risorse:

Guida per i designer ai temi di Discourse
Guida per gli sviluppatori ai temi di Discourse
Guida per principianti all’uso di Theme Creator e Theme CLI per iniziare a creare un tema di Discourse