How Smashing Magazine Utilizes TinaCMS for Managing Editorial Workflow
Geoff is a technical writer and editor for Smashing Magazine. In addition to his role at the magazine, he is also a freelance contractor who provides instruction in front-end design and development. Learn more about Geoff ↬
Receive weekly advice on front-end and UX. Trusted by over 200,000 individuals.
Smashing Magazine has undergone significant changes in recent years, although you may not have noticed. This is often the case with back-end development - the entire structure can be altered, but the front end remains largely unchanged.
Previously, this site was powered by WordPress until 2019, when we transitioned our extensive collection of articles, guides, and tutorials to a Jamstack setup. This change was more of a successful experiment than a planned mission. While WordPress remains a highly effective CMS, particularly for a site like Smashing Magazine that specializes in long-form content, the six-fold increase in page speed performance we experienced with Jamstack was too significant to ignore. This improved speed greatly enhanced the user experience for readers like you.
What we didn't anticipate was how the transition from WordPress to Jamstack would also enhance our developer experience. We knew that users would benefit from the change, but it also simplified our work and expanded our capabilities on the site - a true win-win situation!
Getting to where we are today required effort. We transitioned from creating content in WordPress to using Markdown files, so the benefits weren't immediate. It's only now, with the integration of TinaCMS into our stack, that our entire team is fully reaping the rewards of our Jamstack architecture.
That's the main point I want to convey in this article: a glimpse into how we manage content at Smashing Magazine. TinaCMS is not WordPress, and it has influenced our workflow. We find it exciting because TinaCMS focuses on the developer experience within a CMS context, which allows us to explore new possibilities.
TinaCMS may not be a well-known name in the CMS world. This is likely intentional, as its target audience is the developer community, rather than being a "low-code" solution like WordPress or a completely "no-code" platform like Squarespace. The Smashing Magazine team fits this profile perfectly. While not everyone on our team is a developer, most of us are comfortable working with Git and the command line.
TinaCMS can be described in two ways: it's an open-source, Git-based CMS that supports Markdown files. In fact, TinaCMS saves content in Markdown, MDX, YML, and JSON formats, which allows a team like ours to query data from our static assets. It also generates a GraphQL API for that content, enabling us to extract data from our files. Since everything is linked to a GitHub repository, we have full ownership and control. This is a compelling proposition for a company whose main asset is content. While a self-hosted WordPress instance offers similar benefits, having all our content in a centralized repository with hard files makes "ownership" more tangible than storing it in an SQL database on a server.
That's a brief overview of TinaCMS. It's designed for Jamstack, similar to Sanity, Storyblok, or Netlify CMS, but it offers more features, including a content API (in GraphQL), visual editing, and an integrated local development workflow, which serves us well at Smashing Magazine.
Join Smashing Workshops for practical insights on front-end, design & UX, featuring live sessions, video recordings, and interactive Q&A. With Brad F...