@Emmsii, I used bootstrap for the presentation. I used the the dashboard template with the main links for categories (Resources, Scene-contents, Map-view) and then each thing was it's own thing. Resources is a flat list, scene-contents a tree, and map-view a fake web-cam steam.
There really isn't much to say, it's pretty much do w/e. I'm not a web-developer and despise them so I went super bare-bones so I largely used template HTML files with string-concatenation, not terribly unlike old-fashioned server-side includes (where web-dev should've bloody stopped).
I do have an ancient Java version on github that I used with LibGDX that should get the point across. My C# and C++ versions aren't terribly different, just libraries change and reflecting objects gets stupidly insane on C# (yes, I do mean C# - C++ has so many options for reflection that all make C#'s look like trash).
Does this all happen once? Or does the site data change on refresh?
I do it as an embedded request handler, so it's always serving new HTML at every request, I haven't run into a need for AJAX or such yet - most info/data isn't anywhere near that dynamic in a game - though for overhead map-views I did that as a bogus webcam stream for the refresh of the map as that's information that it's more useful when observed over a long period of time.