First 10 of 37 Posts Switch mode

AstonJ

AstonJ

From the Thought Bot article:

We also added Turbolinks to the app which makes page transitions nearly seamless and let us keep that single-page app feel.

Older tweets on the topic:

https://twitter.com/josevalim/status/591658331988742144

https://twitter.com/mschae/status/615617889870159872

:lol:

Would be interesting to see in a Phoenix app just to compare and out of curiosity. I actually quite liked Turbolinks (in Rails anyway).

brightball

brightball

Yea, I always thought it was a very solid concept for more straightforward sites too. The bulk of your page load time is assets and turbolinks prevents all of those reloading on every page. Even if they’re browser cached, the browser still has to make the HEAD calls to verify last modified and etag for every asset. After reading that article yesterday I tried loading it up on my site but kept get blank pages on every click.

Turbolinks is one of those things that I’d love to be able to get working if I wanted it, but would definitely stay away from building into Phoenix under any circumstances.

ericmj

ericmj

Elixir Core Team

This is not true. Browsers do not make HEAD requests to check if a cached resource is fresh. They also won’t make a request at all if the resource is cached and the response had cache headers which indicates the resource is long-lived. All proper asset systems makes sure to set response header that ensures the client caches the resource for a long time.

AstonJ

AstonJ

I posted this in another thread but maybe something like progressive rendering would be a better fit for Phoenix…

brightball

brightball

I spend too much time in Firefox Developer Edition. :slight_smile:

The reprocessing of all CSS and JS on each page load would still apply without Turbolinks though, even if it does have a far future expire.

andre1sk

andre1sk

Seems would be good match for Phoenix for MVPs. I have personally never used it so would appreciate information from people who have experience with Turbolinks in production.

OvermindDL1

OvermindDL1

Seems like it would actually be fairly easy to do in Phoenix, although I wonder if it is still useful with HTTP/2.

andre1sk

andre1sk

It’s for the most part orthogonal to HTTP/2. It’s more that if there are time and/or resource constraints for delivering full size SPA+Server side rendering+API+Android+iOS solution this seems to provide a “good enough” option. The fact that with http/2 we will get faster page transitions if used with turbolinks is just an added bonus.

OvermindDL1

OvermindDL1

Hmm, an idea for even faster, instead of another request and then swapping the body, could request it over an open websocket. Would be easy to package up into a library.

thinkpadder1

thinkpadder1

See thread in the Phoenix category: Turbolinks with Phoenix

I have never tried Turbolinks before, but from what I’ve read: You don’t need it in Phoenix.

Where Next? Top

Trending in Discussions Top

AstonJ
As the title says, please share what you’ve been up to with Elixir. Whether that’s been learning it, looking into it, making stuff with i...
2977 91898 914
New
AstonJ
The obligatory hello world thread! Who are you and where are you from? :stuck_out_tongue:
4616 55835 594
New
byu
@chrismccord : I just saw the Extract AGENTS.md from Phoenix.new into phx.new generator commit to the phoenix project. My initial shotgu...
New
arcanemachine
I was working on an Ecto migration and I needed a timestamp. So, for the nth time, I looked up the different data types for timestamps, a...
New
AstonJ
Just a general thread to post chat/news/info relating to AI/ML stuff that may be relevant for Nx now or in the future. Got anything to sh...
New
juhalehtonen
There has been a thread to discuss the Stack Overflow Developer Survey on this forum every year since 2018, so here’s yet another one for...
New
type1fool
I just stumbled on a newly redesigned elixir-lang.org. :tada: It looks like @Software_Mansion did the work, and I think it is generally a...
New

Other Trending Topics Top

JesseHerrick
Hey, I’m Jesse and I’m the main contributor behind Dexter, a full-featured, lightning-fast Elixir LSP optimized for large codebases. It s...
New
jimsynz
Beam Bots (or just BB for short) is a framework for building fault-tolerant robotics applications in Elixir using familiar OTP patterns. ...
New
Damirados
Hello everyone. After busy few months I am happy to announce v0.1.0 of Emerge & Solve. They are GUI (Emerge) and State management (S...
New
netoum
Corex is an accessible, unstyled UI component library for Phoenix that integrates Zag.js state machines using Vanilla JavaScript and Live...
New
ausimian
Emily is an Elixir library that runs Nx computations on Apple’s MLX. Install it as the default Nx backend and Nx, defn, Axon, Nx.Serving,...
New
mudasobwa
While I am working on the Language Agnostic Code Audit SaaS, which uses MetaAST (spoiler: I am expecting it to be in a good shape for ann...
New

We're in Beta

About us Mission Statement