After experimenting with Keystatic
@thekeystatic these past few days - I'm very impressed with it. So impressed, I'm considering adding it to all themes...
But first, what is it?
It is a local and git based CMS, which lives at the /keystatic route. It allows you to write markdown blog posts and other core site data with a friendly user interface and rich text editor.
I tested both the default markdoc implementation, and the experimental mdx integration (which is the future and my preferred option)
In both cases, you can register custom components, and even create react components to use in the preview in the editor. I tested this for my Blogsmith theme newsletter CTA and Admonition components. However I have had issues with the preview components when deployed (unstyled), but it's not a showstopper.
My favorite part about keystatic is that you can choose exactly where data is placed in your filesystem, AND the text that's put in the markdown / yaml / json data. This means it can work perfectly with Astro's built in image optimization!
You also have the ability to control exactly what items the writer has access to in the rich text editor. So for your mom and pop business owner who has no need of code blocks, you can just disable them.
Plus, I joined the discord and got some tips from the man
@simonswiss himself. Nothing but good things to say there - he's friendly and helpful.
I've got it set up to use local mode when in dev, and it switches to the Keystatic Cloud for deployment, which is free for teams with 3 or less users! The cloud deployment was a pretty easy setup.
Only reason I hesitate to use it yet is that the MDX implementation is experimental, and I far prefer it to markdoc. However, it is the future, and I think the benefits outweigh the negatives.
Definitely something to keep an eye on either way.