Inspiration

Inspiration

It's funny, you never really know when inspiration is going to strike, well, I at least don't.

I have somewhat been neglecting this blog a bit lately, but that's something for me to talk about another time, right now I just want to share this idea I've got rattling around inside my head

Headless CMS

So, for a friend I've been looking at giving them a head leaving one of those site builder websites onto a more self hosted solution. Thing is coding and writing stuff in markdown directly is such a drag and there'd surely be a better way.

I've been looking into headless CMS's and whatnot and a lot of them seem okay, and pretty usable, but there's a big part that feels like extending them isn't ideal. So while they might not actually go with it I've decided that personally I'm going to have a crack at it myself.

A headless CMS seems the best choice just because it means the pages can be generated and then put up basically wherever, so like how this blog can live basically anywhere (including the artic vault apparently, which is wicked cool)

So what's my great idea.

I already started writing a little static site generator last year? Maybe it was this year? It's a bit hard to tell, either way this is what I'm going to be basing this whole plan off of.

  1. Extend Seagull. (This doesn't really count, as it's barely just half finished in it's current state)

So some of the stuff I've thought that would be nice with Seagull

  1. Automatic index pages for folders.
  2. Auto generated navigation menus based off of folder structure
  3. Max depth for said navigation, maybe by default 2? So menus, then submenus? Sub sub menus might be beyond my css skills just off the cuff
  4. Might make a cookiecutter template for it? I've only recently discovered cookiecutter and it seems neat.

Of course there's more to a headless CMS than a substandard static site generator built by a single man, so to extend it I'm thinking of writing the following new projects.

  1. Flask app to manage image files/folders etc
  2. Flask app to help write the posts to go on the page
  3. Some sort of JS editor that can switch between: Markdown, HTML, and WYSIWYG Rich Text type editor? I might just pinch one that already exists and plug that into number 2. Being able to preview what the text comes out like would be a massive bonus obviously.

Big part of the reason I'm thinking a flask app is because I'm most comfortable in Django, but that just comes with so much stuff that just isn't needed and is kind of overkill for something that's intended to be run locally. I've played around a bit with Flask and it feels to me at least to be a stripped down Django. I haven't touched pyramid or any of the other python web frameworks, but from what I've seen, I don't think they're really what I'm after. I could probably go with a different language, but seeing Seagull was written in python (and that's how I make my bread and butter) it simplifies things just to have the one stack I guess.

And lastly I think I'll end up writing instructions to write/extend/deploy the output to github/gitlab pages and whatnot.

So I think this will be the purpose of my blog for the next while. I've been switching kind of haphazardly between personal projects the last couple of months. This one is big enough and varied enough that I should be able to work on it without getting fatigued and whatnot.

That's me for now. Cheers, maybe we'll see some open source contribution soon!

links

social