Server-side rendering with create-react-app, React Router v4, Helmet, Redux, and Thunk

Patrick Cason
8 min readOct 12, 2017

Update

June 1st, 2018 — I’ve updated this quite a bit to keep up with all the newfangled technologies you kids keep inventing. If you want context, keep reading, but if you want the latest and greats… then head over to the new article.

The Problem

We all know that server-side rendering is no longer essential for most major search engines. But if your development needs demand that your single page app (with multiple pages) work on Facebook and Twitter… prepare to ditch that nice serverless S3 setup you had going so well for you — it’s time to go back to the server. My problem was that if you tried to access the single page app on Facebook it would not grab any of the Open Graph <meta> tags it needs to parse.

Well why don’t you just put the <meta> tags in the public HTML file and be done with it?

What if you would like to have public profile pages uniquely visible to be shared on social media platforms? I had a client request just this very thing the other day. They wanted public profile pages for their users (just like any other social media site probably would) to show up in Facebook with…

--

--