I’m planning to build a platform on top of a self-hosted Discourse instance that will include various custom features like a search engine, documentary resources, wikis, and more. These features are developed using HTML, CSS, and JavaScript, primarily as static pages.
My goal is to integrate these custom pages directly into the Discourse forum so that they appear as native pages rather than posts, creating a seamless user experience where they feel like an integral part of the forum. I’d like these static pages to be accessible to forum users, with all JavaScript functionalities running as intended.
Could anyone advise if this approach is possible within Discourse, or if there are specific plugins, best practices, or configurations that I should look into? Any guidance on embedding and displaying custom HTML/JS pages without making them look like posts would be greatly appreciated!
Well all of the features I plan to implement, like those mentioned above, is static codes, which means all of it is build through HTML, CSS and vanilla JS. I wonder if it is possible to make static page, and add the custom codes for the features mentioned onto my own Discourse instances.
Sorry to continue this, but Discourse isn’t static. It is dynamic. So are most of JS-solutions too, or PHP-based.
So, is this now question of terms? And you just want embed Discourse forum per se into a web page among everything else? You can show topics, but you will miss almost everything else functionalities of Discourse AFAIK.
No, the code that I plan to implement, like the page I want to add into my Discourse forum is static page, so there wouldn’t be any server-side rendering and etc.
No, I want to add the web page, onto my Discourse forum instance. Opposite of what you saying actually.
This is quite cool, but I actually thinking of another thing, like adding and creating static page inside Discourse. The page would also needed to add custom HTML, CSS and JavaScript.
Well, I has noticed that my question might be very confusing, so I has edited the question with the message re-generated with ChatGPT. This is the edited question:
Hello Discourse Community!
I’m planning to build a platform on top of a self-hosted Discourse instance that will include various custom features like a search engine, documentary resources, wikis, and more. These features are developed using HTML, CSS, and JavaScript, primarily as static pages.
My goal is to integrate these custom pages directly into the Discourse forum so that they appear as native pages rather than posts, creating a seamless user experience where they feel like an integral part of the forum. I’d like these static pages to be accessible to forum users, with all JavaScript functionalities running as intended.
Could anyone advise if this approach is possible within Discourse, or if there are specific plugins, best practices, or configurations that I should look into? Any guidance on embedding and displaying custom HTML/JS pages without making them look like posts would be greatly appreciated!
Those all sound like things that Discourse has already.
The easiest way to do that is to just host them somewhere else and add links to them with a theme component and have that site themed to look the same as your Discourse site. People don’t notice URLs, so if you keep the navigation on the other sites such that people can get back to Discourse, then it Just Works and nothing fancy is required.
I"m not quite sure what that means, but if you really want to add whatever your custom features are to Discourse then you’ll need to create them as plugins or theme compononents.