Resume

05-04-2024

You don’t need a CMS for your site

It’s 2024, and editing content on custom-built sites and web-apps still sucks.

There’s a gazillion of CMS solutions out there. Some have vendor lock-in. some are super-expensive. Some are more modern than others, or even open-source. But I would like to make the case that you might not even need a CMS!

When you build a site or an app, you’ll often need a database to store your content, storage for your images and authentication to allow users to log onto your site. But the modern front-end developer is lazy and doesn’t want to bothered with setting up all of this. So we just like to slap Firebase, Supabase or Strapi onto our Nuxt app and be done with it.

This is great. Except, your client still can’t edit their fucking site. They need you (expensive) to change images or make the smallest textual changes. And even if they can, there’s a good chance the user experience sucks. Because content in the CMS is detached from where it’s shown on the site. Want to edit that hero image on your blog? Well, sorry! You’ll need to log into the CMS. Damn, what was the URL again? Once you’re finally there, you’ll need to search for the particular post, hoping you can even find it! Then, upload the image in a sluggish media uploader, save it, publish it, switch tabs, refresh, check the result, and possibly repeat the process if you made a mistake. Just came across a typo elsewhere on your site? Fuck, that’s static content, it doesn’t come from the CMS and you’ll need to message your dev to make the change manually! Aaargh!

Why can’t we have nice things? No-code platforms like Framer and Webflow allow you to simply point-and-click to edit any content, right where it’s shown on the site. No switching tabs, no spitting through rows and rows of unused CMS content. None of that bullshit. Just point, click, edit and save. It’s that simple. And the funny thing is, Webflow has had it for years already.

Sigh... We’re modern front-end developers, right? Surely there must be a better way?

Well, I happen to find the combination of CMS and design tools an interesting space. And I think we can make our kinky edit-in-place dream come true.

Nuxt Editable

Enter: Nuxt Editable. A plug-and-play editor UI. Drop in an <NuxtEditableEditor/> component anywhere in your app and forward your content changes to whatever fancy or not-so-fancy database solution you’re already using.

By telling Nuxt Editable what your content looks like with a scheme, you’ll get an easy-to-use editor UI that lives on top of your app, and which knows where your content is rendered. This allows users to quickly point and click anywhere on the site itself to edit and publish content right away. Finally!

And because Nuxt Editable doesn’t have any restrictions or assumptions on where your data is coming from, it allows you to reuse any existing database, storage or auth solutions you may already be using. You use any auth solution to log users into the editor, upload files to any storage solution and save content to any database solution, making it very straightforward to integrate Nuxt Editable with platforms like Firebase, Supabase or Nuxt Hub.

So, I’m saying it again: You don’t need a CMS. You just need Nuxt Editable, and plug it into whatever you already have!

I’ve started Nuxt Editable to scratch my personal itch with custom-built Nuxt sites not being as editor-friendly as they should be. It’s an open-source project that aims to make it easier for the Nuxt community to build Nuxt sites that are fun and easy to edit, both for yourselves as well as your clients! I’m excited to learn what you’ll build with it, and would love to hear any feedback.

Check out this live demo and read the docs to get started.