Demo: https://jhvanderschee.github.io/matt_mulderberg/
A website in a single HTML file. It simply uses the #anchor suffix and the :target CSS selector to show and hide pages/content.
To create a new page, add a <section> with a unique id:
<section id="contact">
Contact me!
</section>
Then you could add a link to it inside <nav>:
<a href="#contact">Contact</a>