Ja, definitiv. Ich baue seit fast so langer Zeit Themes, wie Discourse existiert, und beziehe mich ständig in einem separaten Fenster auf den Quellcode.
Für Templates solltest du im Allgemeinen hier suchen: https://github.com/discourse/discourse/tree/master/app/assets/javascripts/discourse/templates
und für Widgets hier: https://github.com/discourse/discourse/tree/master/app/assets/javascripts/discourse/widgets.
Manchmal ist nicht sofort klar, wo sich ein Template befindet, weil es vielleicht eine Komponente ist, die in einem anderen Template verschachtelt wird. Wenn ich es nicht mehr weiß, suche ich im Quellcode nach einem bestimmten Markup-Teil.
Wenn ich zum Beispiel etwas zur „Über uns“-Seite hinzufügen möchte, sehe ich, dass der Körper der „Über uns“-Seite eine eindeutige Klasse about-page hat. Ich beginne also mit der Suche nach about und body-page (was eine weitere Klasse auf der Seite ist).
Um einige deiner Fragen zu beantworten:
Ich glaube, das erfordert ein Plugin, was außerhalb meines Fachgebiets liegt … vielleicht kann jemand anderes besser helfen.
Es gibt verschiedene Templates für die verschiedenen Seitenlayouts, aber angenommen, du sprichst über eines der „Boxen mit …“-Layouts: