I was just perusing the html source of forum.manjaro.org and noticed many javascript files loading (mostly deferred) – this can create a lot of (arguably) unnecessary requests to the server, and can potentially slow caching and loading of a page.
Have you considered consolidating most of those (the non-theme-related) files into a single library file? For example:
<link rel="preload" href="/assets/plugins/plugins.common-xxxxxxxx.js" as="script">
<script defer src="/assets/plugins/plugins.common-xxxxxxxx.js"></script>
This could reap obvious benefits in terms of average page loading times.
Specifically, these declarative <link>
and <script>
pairs (for discourse plugins), but possibly beneficial for other common scripts as well. Less is more. Unless there is a specific reason to keep them separate, for example, is the case of the theme scripts that rely on their IDs being referenced.
/assets/plugins/discourse-chat-integration-
/assets/plugins/discourse-details-
/assets/plugins/discourse-fingerprint-
/assets/plugins/discourse-gamification-
/assets/plugins/discourse-lazy-videos-
/assets/plugins/discourse-legal-tools-
/assets/plugins/discourse-local-dates-
/assets/plugins/discourse-narrative-bot-
/assets/plugins/discourse-presence-
/assets/plugins/discourse-solved-
/assets/plugins/discourse-staff-notes-
/assets/plugins/discourse-telegram-notifications-
/assets/plugins/docker_manager_admin-
/assets/plugins/poll-
/assets/plugins/procourse-installer-
/assets/plugins/retort-
All of those files consolidated into just one <link>
and one <script>
file might even be more manageable than having them separate.
This is not any kind of criticism – just suggested out of interest. Cheers.