The discussion revolves around when to use a plugin versus a theme component in Discourse. maaatt asks whether small front-end changes, like CSS adjustments or tooltips, require a plugin. merefield clarifies that plugins are only needed for back-end changes, while theme components (TCs) suffice for front-end presentation changes. pfaffman adds that changes involving data not available in the API may require a plugin or AJAX. maaatt seeks guidance on setting up a TC locally, to which Arkshine recommends the Discourse Theme CLI tool. pfaffman notes that the
thanks!
So if I need to change a label or add a tooltip I need to create a theme but if I need to add a new column to a page (eg: the topic list) I need to create a plugin?
If you need to change the API, e.g. any data in .json route, changes to authorisation, back-end processing of data, you need a plugin
For many front end changes that don’t need different data, you only need a TC. ie a lot of presentational changes, or any logic in javascript that is not sensitive.
And a gray area (which doesn’t apply here, I think) is if you need data that is not available (like user custom fields) you could either use AJAX to pull that data with javascript when you need it, or have a plugin that adds the data to the serializer.
inside the category topics list I need to add a new column with the “created_at” column and change the date from “tiny” to extended (eg: DD/MM/YYYY HH:MM)