0
votes

We as a company are doing a refactor from a legacy codebase to either Vue or React. There is a discussion going on what would be the best option to serve a large Vue/React application, client-side rendering or server-side rendering.

In our case, the application is only available for logged in users(front-page is served at a different location). This means that SEO is not relevant to the app.

After some research, I made the following conclusion:

  • SSR(server-side rendering): Time for content to be visible is faster. Time to interactive remains the same or gets worse.
  • CSR(client-side rendering): Time to visible and time to interactive is the same.

What would be the best option to serve a large front-end(SSR or CSR)? What are other trade-offs to take into account?

1
or what about using meta frameworks like Nuxt.js or Nest.js? Then you have server side rendering AND an SPA. I am using Nuxt.js for my own. - Ifaruki

1 Answers

0
votes

Speaking for what concerns the vue world.

Personally I believe that if you don't need any SEO, and the communication with the server is just based on rest apis hitting an already existing server, vue-cli is the best option for you.

Nuxt has a lot of sane defaults I like, but it would be like using a machete for slicing a banana.

Now, regardless of the framework, for making your CSR application performant, you can always use split-chunks which should reduce loading time for the javascript files to download and pre-rendering.