Hacker News new | ask | show | jobs
by bruncun 3116 days ago
Turbolinks evolved from Pjax (4 yrs old) and is part of Ruby on Rails (11 yrs old). Not only does it respect back/reload out of the box, but it also supports native. Its as mature as it is supported as it is powerful.

It really just works - drop it into a project and you instantly have a SPA. Its far from a framework - its API has less surface area than even React. The above comment couldn't apply less to Turbolinks.

The only true caveat necessary is that it's written in CoffeeScript. :P

2 comments

Just to be pedantic: pjax is nearly 7 years old. https://github.com/defunkt/jquery-pjax/commit/3efcc3c968c18c...
The only true caveat is you can’t have multiple dynamic elements per view.
It allows you to do partial updates, but indeed it doesn’t support view transitions out of the box. :/ That said, the native wrappers offer built-in transitions, and you could probably hack web transitions with some modding and a component library.
I like your optimism, but I would like to remind (scare) you:

If you decide to put your effort into customizing the framework, you increase your risk of building

> [...] your poorly cobbled-together "framework" for the next 2, 3, or more years. If anything changes and pages stop working "right", you get to pick up the pieces. Yes, "you", because since your framework is something that you pieced together, there are no "tutorials" nor stack overflow questions nor manuals to refer to.

This is easy to do in Rails on your own. Turbolinks is irrelevant to this.