JAMstack blog - confusion around usage of headless CMS
I'm trying to wrap my head around the idea of a JAMstack blog. If I understand correctly the basic idea is:
- Write blog articles on a CMS - taking advantage of all the visual editing features it provides
- Develop a React (or similar) app that will make API calls to your CMS, fetch the blog posts and render them.
- Pre build your React app pages (as they are mostly static content) and serve these on a CDN
What I don't understand is the gap between steps 1 and 2. If you design a nice fancy blog post on your CMS, aren't you losing all the styling as you're only sending a basic serialized version of the blog post over the API? You'd also surely be missing out on things like automatic structured data which some CMS can do for you.
I've tried setting up Ghost CMS locally, and when I fetch one of the example blog posts I'm getting back some mark up that includes \`<div class="kg-gallery-image"...\` but there's no css styles included in the response. Is it standard to include some sort of CMS specific css file?