Кроме того, сайт это комбинация технологий: js, dom, css, xpath, etc. Как все это одному человеку написать не представляю.
повторюсь, есть jsdom для тестирования dom
https://github.com/jsdom/jsdomтам нет css, там нельзя распечатать в pdf, нельзя сделать скриншот
но можно работать с dom - кликать, смотреть что поменяется
сделать вроде как нужно не очень много, не нужно делать весь nodejs на java
нужен event loop, fetch и еще несколько api
Из интересного, можно, например сделать реализацию fetch, которая ходит напрямую в ring без поднятия сервера