They have done this all themselves.
You look at the javascript they’ve written, they intercepts the clicks and re-write the destination url to be #about instead of /about. Then dynamically loads the page content. Well, it’s a lot more complicated than just that, but it give you the basic philosophy. It’s very nicely done actually.
https://www.designobsessions.com/wp-content/themes/galleria/js/custom.js?ver=1.2.6
It would be interesting to build a plugin that could do this by default. It would require a lot of configuration though because you’d need to know all the html class and id infor.