Originally published on Cohost.
now that Astro has their Content Layer API coming in their next major release, I’m suddenly a lot more flexible in how I can host the markdown files that power my blog, no longer limited to just “checked in to the Git repo”. To go along with a time-honored tradition, let’s make a table!
Git | S3 | SQLite | Third-party CMS | ||
---|---|---|---|---|---|
Backup-ability | Very, almost required | Manually, tied to provider's CLI | Manually, w/ scp | ? | |
Snapshot-ability | Very, required | Somewhat, potentially automatic, but probably not going to | Somewhat, probably manual, but probably not going to | Probably Not | |
Astro Load-ability | Easy | Potentially easy | Potentially hard | Easy if supported, potentially hard if not | |
Use My Own Post Composer | Yes | Yes | Yes | No, but maybe that's better? | |
Editable w/o Post Composer | Yes | Not Easily | Even Less Easily | Likely No | |
Ease Of Post Composer Posting | Very | Pretty | Sort Of | Very | |
Ease Of Post Composer Editing | Not Very | Pretty | Sort Of | Very | |
Deployment Solution? | Already Built | Not Built | Not Built | Not Built | |
Supports Drafts? | No | Yes | Yes | Probably | |
Also Stores Media? | Yes, but it shouldn't | Yes | No | Probably? | |
Category | Git | S3 | SQLite | Third-party CMS |
yep, as expected, making a table was very helpful! it really seems like Git is still the best solution, followed by S3 as a close second. Doing more research, it seems like “Git-based CMS” is a not-uncommon thing, so really I’m pretty good where I am already.
The biggest thing I might change is moving the image files out of my Git repository. It makes clones take a lot longer than needed, right now they’re actually the largest part of redeploys. I think having them be hosted from a S3 + Cloudflare combination & using Astro’s Remote Image Functionality will help speed up build times, because that should be faster than pulling them thru Git. idk tho we’ll see.