0:00-1:01:54
Streams straight from the publisher. podnod never proxies or re-hosts episode audio.
In this episode of Syntax, Scott and Wes talk about headless content management systems — why you might want to use one, things you should take into account, and more!
Sanity - SponsorSanity.io is a real-time headless CMS with a fully customizable Content Studio built in React. Get a Sanity powered site up and running in minutes at sanity.io/create. Get an awesome supercharged free developer plan on sanity.io/syntax.
Freshbooks - SponsorGet a 30 day free trial of Freshbooks at freshbooks.com/syntax and put SYNTAX in the “How did you hear about us?” section.
Show Notes02:38 - What and why
- A headless CMS doesn’t mean you have to use a static site generator
- A headless CMS has an API:
- REST
- GraphQL
- GROQ
- A headless CMS can pipe its content into:
- Static Site on build - like Gatsby
- An app on run/refresh
- An existing website - widget
- What makes a CMS? Do you need a UI?
- What is the threshold?
- Is a hotdog a sandwich?
- Things to think about when choosing an API
- Auth - Rules + roles + levels
- How easy is it to create new data types?
- Is it code or UI?
- Can my mom use it?
- Can you create one-off content types? (e.g. settings pages)
- Custom workflows
- dRafts, revisions, roll backs
- How are images handled? Do you need another service for that?
- Pre-determined UI
- Is custom UI possible?
- Two-way relationships?
- Tags?
- Data validation?
- UI + API?
- Hosting?
- Pricing?
- Content movability?
- Can you get your data out?
- Schemas
- Users
- Revisions
- CORS or realtime API?
- APIs
- Can you insert data via the API? (or just pull)
- Node API
- Importing data
24:37 - Hosted
- Sanity
- Prismic
- Contentful
- Dato CMS
- Storyblok
- 8Base
- Agility CMS
- Seems to be making a big corporate play
36:59 - Self-Hosted
- WordPress
- WordPress REST API
- GraphQL API
- WP GraphQL
- Advanced Custom Fields for custom UI
- Most things in WordPress are custom post types and taxonomies, so data from plugins can often be surfaced
- The theme UI from plugins is often lost
- Drupal
- Craft CMS
- Ghost
- Strapi
- Keystone
- Joomla (JK!)
44:33 - API (BYOUI)
47:37 - Git Based
50:30 - Other
- Google Sheets
- Airtable
-
Tina CMS
- Not a CMS
- Markdown under the hood
- Notion
- Scott: DEWALT Random Orbit Sander
- Wes: Shelf Brackets
- Scott: New course on Sapper - Sign up for the year and save 25%!
- Wes: Wes’ YouTube Channel
- Scott’s Instagram
- LevelUpTutorials Instagram
- Wes’ Instagram
- Wes’ Twitter
- Wes’ Facebook
- Scott’s Twitter
- Make sure to include @SyntaxFM in your tweets
Sanity.io
sanity.iosanity.io/create
sanity.iosanity.io/syntax
sanity.iofreshbooks.com/syntax
freshbooks.comGatsby
gatsbyjs.orgNode
nodejs.orgSanity
sanity.ioPrismic
prismic.ioContentful
contentful.comDato CMS
datocms.comStoryblok
storyblok.com8Base
8base.comAgility CMS
agilitycms.comWordPress
wordpress.orgWP GraphQL
wpgraphql.comAdvanced Custom Fields
advancedcustomfields.comDrupal
drupal.orgcontentacms.org
contentacms.orgCraft CMS
craftcms.comGhost
ghost.orgStrapi
strapi.ioKeystone
keystonejs.comJoomla
joomla.orgHasura
hasura.ioPrisma
prisma.ioFirebase
firebase.google.comNetlify
netlify.comForestry
forestry.ioGoogle Sheets
google.comSheety
sheety.coAirtable
airtable.comTina CMS
tinacms.orgNotion
notion.soPixel & Tonic
pixelandtonic.comGraphCool
graph.coolGraphCMS
graphcms.comSapper
sapper.svelte.devDEWALT Random Orbit Sander
amzn.toShelf Brackets
amazon.comNew course on Sapper
leveluptutorials.comWes’ YouTube Channel
youtube.comScott’s Instagram
instagram.comLevelUpTutorials Instagram
instagram.comWes’ Instagram
instagram.comWes’ Twitter
twitter.comWes’ Facebook
facebook.comScott’s Twitter
twitter.com@SyntaxFM
twitter.com