A demonstration of building an MPA (Multi-Page Application) with cross document view transitions (animations between pages) with 0 JavaScript running in the web browser.
With all the animations it's hard for a user to tell that each click takes you to a separate page as it looks like one seamless page. The animations are deliberately slow as it's a demo. A real application would have much faster animations.
All the animations are done in CSS using the view transitions API
https://developer.mozilla.org/en-US/docs/W...
This is supported in recent versions of Safari and Chrome. Firefox will support it soon. In unsupported browsers the page still works, but without animating.
You can try it yourself via docker:
docker container run --rm -it --init -p5173:5173 docker.io/ccouzens/todo-mvc:latest
You can check out the source code here
https://github.com/ccouzens/golang-todo-we...
While there is no client side javascript, the web server itself is written in node, Preact and Typescript.