Update: You may now use "universal" instead of isomorphic (see this post).

The difference with regular SPA is that any page you access directly will be initially server-side rendered. You can check that by accessing directly a page and displaying its source.
Even if server-side rendered, the SPA keeps working as usual (front-end router, template rendering ...).

But ... why bother about that ...?

I won't go into specifics but here are two main upsides :

  • Initial load is faster : Since markup is present, no API request from the client nor re-rendering needed.
  • More SEO friendly : Since markup is present, crawlers can read your site.

TLDR; from stackoverflow

Isomorphic web sites can be run on both the server and in the browser. They grant code reuse, seo, and page load speed boosts while still having an interface written in JS. node.js is most often used for the server javascript-engine.

Learn more about that and this project on my blog post.