{"id":26417,"date":"2022-12-30T09:28:04","date_gmt":"2022-12-30T17:28:04","guid":{"rendered":"https:\/\/michaelhans.com\/eclecticism\/?p=26417"},"modified":"2025-08-27T15:51:45","modified_gmt":"2025-08-27T22:51:45","slug":"blogging-cms-wishlist","status":"publish","type":"post","link":"https:\/\/michaelhans.com\/eclecticism\/2022\/12\/30\/blogging-cms-wishlist\/","title":{"rendered":"Blogging CMS Wishlist"},"content":{"rendered":"<div class='__iawmlf-post-loop-links' style='display:none;' data-iawmlf-post-links='[{&quot;id&quot;:1365,&quot;href&quot;:&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/Movable_Type&quot;,&quot;archived_href&quot;:&quot;&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[],&quot;broken&quot;:false,&quot;last_checked&quot;:null,&quot;process&quot;:&quot;done&quot;},{&quot;id&quot;:1366,&quot;href&quot;:&quot;https:\\\/\\\/indieweb.org\\\/Micropub&quot;,&quot;archived_href&quot;:&quot;&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[],&quot;broken&quot;:false,&quot;last_checked&quot;:null,&quot;process&quot;:&quot;done&quot;},{&quot;id&quot;:751,&quot;href&quot;:&quot;https:\\\/\\\/redsweater.com\\\/marsedit&quot;,&quot;archived_href&quot;:&quot;https:\\\/\\\/web-wp.archive.org\\\/web\\\/20260227210603\\\/https:\\\/\\\/redsweater.com\\\/marsedit\\\/&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[{&quot;date&quot;:&quot;2026-03-01 12:45:29&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-12 04:03:41&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-19 04:24:08&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-26 12:58:27&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-30 17:48:35&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-06 08:20:07&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-09 21:00:55&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-15 08:55:28&quot;,&quot;http_code&quot;:206}],&quot;broken&quot;:false,&quot;last_checked&quot;:{&quot;date&quot;:&quot;2026-04-15 08:55:28&quot;,&quot;http_code&quot;:206},&quot;process&quot;:&quot;done&quot;},{&quot;id&quot;:1367,&quot;href&quot;:&quot;https:\\\/\\\/activitypub.rocks&quot;,&quot;archived_href&quot;:&quot;&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[],&quot;broken&quot;:false,&quot;last_checked&quot;:null,&quot;process&quot;:&quot;done&quot;},{&quot;id&quot;:1368,&quot;href&quot;:&quot;https:\\\/\\\/indieweb.org&quot;,&quot;archived_href&quot;:&quot;&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[],&quot;broken&quot;:false,&quot;last_checked&quot;:null,&quot;process&quot;:&quot;done&quot;},{&quot;id&quot;:1369,&quot;href&quot;:&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/HTML5&quot;,&quot;archived_href&quot;:&quot;&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[],&quot;broken&quot;:false,&quot;last_checked&quot;:null,&quot;process&quot;:&quot;done&quot;},{&quot;id&quot;:1370,&quot;href&quot;:&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/WAI-ARIA&quot;,&quot;archived_href&quot;:&quot;&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[],&quot;broken&quot;:false,&quot;last_checked&quot;:null,&quot;process&quot;:&quot;done&quot;},{&quot;id&quot;:1371,&quot;href&quot;:&quot;https:\\\/\\\/daringfireball.net\\\/projects\\\/markdown&quot;,&quot;archived_href&quot;:&quot;https:\\\/\\\/web-wp.archive.org\\\/web\\\/20260228032930\\\/https:\\\/\\\/daringfireball.net\\\/projects\\\/markdown\\\/&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[{&quot;date&quot;:&quot;2026-03-02 12:55:43&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-14 11:38:09&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-19 04:24:07&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-26 12:58:28&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-30 02:06:47&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-07 12:20:29&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-17 11:41:22&quot;,&quot;http_code&quot;:206}],&quot;broken&quot;:false,&quot;last_checked&quot;:{&quot;date&quot;:&quot;2026-04-17 11:41:22&quot;,&quot;http_code&quot;:206},&quot;process&quot;:&quot;done&quot;}]'><\/div>\n<p>High on my reasons why I wish I had the knowledge (or the time and energy to gain the knowledge) to code my own software: As far as I can tell, nobody has yet written the CMS I want to use for blogging.<\/p>\n<p>Basically, what I want is early-2000s <a href=\"https:\/\/en.wikipedia.org\/wiki\/Movable_Type\">MovableType<\/a>, only with some modern updates. I&#8217;ve long missed many of the tweaks and customizations that I could manage with MovableType that I can&#8217;t do on WordPress.<\/p>\n<p>Pie-in-the-sky featureset:<\/p>\n<ul>\n<li>Self-hostable or installable on a hosted server (Dreamhost, etc.)<\/li>\n<li><a href=\"https:\/\/indieweb.org\/Micropub\">Micropub<\/a> compatible so I can use <a href=\"https:\/\/redsweater.com\/marsedit\/\">MarsEdit<\/a> or other such third-party editors<\/li>\n<li><a href=\"https:\/\/activitypub.rocks\">ActivityPub<\/a>\/<a href=\"https:\/\/indieweb.org\">IndieWeb<\/a> compatible for federation (at least outbound, ideally bidirectional so that federated replies could be appended as &#8220;comments&#8221;)<\/li>\n<li>Generates a static website instead of building every page when its called<\/li>\n<li>Only regenerates necessary pages when updates are published, full-site rebuilds available on demand<\/li>\n<li>Some sort of templating &#8220;building blocks&#8221; system for assembling different pages, posts, or sections thereof<\/li>\n<li>Basic templates that are fully standards-compliant and accessible (<a href=\"https:\/\/en.wikipedia.org\/wiki\/HTML5\">HTML5<\/a>, <a href=\"https:\/\/en.wikipedia.org\/wiki\/WAI-ARIA\">ARIA<\/a> when\/if necessary (since static pages shouldn&#8217;t have much dynamic content), etc.)<\/li>\n<li>Templates should also be microblogging compatible\n<ul>\n<li>Example: Titles are optional, and shouldn&#8217;t be the only item used for permalinks to any given post, something that bugs me about my current blog template but I haven&#8217;t figured out how to fix yet<\/li>\n<\/ul>\n<\/li>\n<li><a href=\"https:\/\/daringfireball.net\/projects\/markdown\/\">Markdown<\/a> for writing and storing posts\n<ul>\n<li><ins><time datetime=\"2025-08-27\">8\/27\/25<\/time> update:<\/ins> Less concerned about this, actually, as I&#8217;m using less and less Markdown in my posts, since it is a purely presentational language and not semantic. For example, underscores are rendered as <code>&lt;em&gt;<\/code>, but I often want <code>&lt;cite&gt;<\/code> or even <code>&lt;i&gt;<\/code>; italics are used for a lot more than just emphasis. I do still use Markdown for basic structural formatting (lists, blockquotes, etc.), but there&#8217;s a <em>lot<\/em> more plain HTML getting mixed in to my posts now, and I could pretty easily go back to straight HTML if necessary.<\/li>\n<\/ul>\n<\/li>\n<li>The ability to generate multiple versions of posts\/pages on rebuild\n<ul>\n<li>Example: Output both <code>.html<\/code> and <code>.md<\/code> versions of a blog post, so a &#8220;view source&#8221; link could be included in the post template; readers could then easily click through to view the Markdown version<\/li>\n<\/ul>\n<\/li>\n<li>Import posts exported from existing common blogging or microblogging systems (WordPress and Twitter, in my particular case)<\/li>\n<\/ul>\n<p>Things I don&#8217;t want or care about:<\/p>\n<ul>\n<li>Fancy drag-and drop &#8220;block&#8221; editors like WordPress&#8217;s Gutenberg<\/li>\n<li>Comments (beyond pingbacks\/trackbacks\/federated responses)<\/li>\n<li>Having to do everything on one machine (edit locally and upload)<\/li>\n<\/ul>\n<p>I&#8217;m sure there are plenty of other things that I could put in the wishlist or the &#8220;no thanks&#8221; list, but those are the first ones to come to mind. Every time I&#8217;ve done a survey of static site generators, they consistently fail one or more of the above.<\/p>\n<p>Honestly, I think I could live without much of the above, if I could find a static site generator that would allow me to blog and manage posts and pages from anywhere (my desktop, my laptop, my iPhone, my iPad, etc.) through the Micropub API; logging into a web interface of some sort should be possible if necessary but not required for general day-to-day post publishing.<\/p>\n<p>Oh, and it needs to be installed and managed by someone who has a higher-than-average knowledge of computing and tech geekery, but doesn&#8217;t do this stuff for a living. Someone who gets annoyed when they call tech support and have to start with the &#8220;is it plugged in?&#8221; level of questioning, but who also gets annoyed when software assumes that you&#8217;ve been immersed in this kind of stuff for decades. There doesn&#8217;t seem to be much out there other than WordPress that does a good job of bridging between &#8220;it just works&#8221; and &#8220;I eat, drink, and breathe code in all my waking and sleeping hours&#8221; levels of capability. I don&#8217;t mind, and even enjoy, poking at the guts of things when I have the time and energy, but I don&#8217;t want to be required to do a week of research to figure out what the terms in the &#8220;how to install&#8221; documentation mean.<\/p>\n<p>So &#8212; I don&#8217;t suppose that anyone knows of my magical unicorn blogging software actually existing anywhere?<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Basically, what I want is mid-2000s MovableType, only with some modern updates.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2040],"tags":[4241,812,599,1457],"class_list":["post-26417","post","type-post","status-publish","format-standard","hentry","category-blog","tag-micropub","tag-movabletype","tag-weblogs","tag-wordpress"],"_links":{"self":[{"href":"https:\/\/michaelhans.com\/eclecticism\/wp-json\/wp\/v2\/posts\/26417","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/michaelhans.com\/eclecticism\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/michaelhans.com\/eclecticism\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/michaelhans.com\/eclecticism\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/michaelhans.com\/eclecticism\/wp-json\/wp\/v2\/comments?post=26417"}],"version-history":[{"count":2,"href":"https:\/\/michaelhans.com\/eclecticism\/wp-json\/wp\/v2\/posts\/26417\/revisions"}],"predecessor-version":[{"id":52388,"href":"https:\/\/michaelhans.com\/eclecticism\/wp-json\/wp\/v2\/posts\/26417\/revisions\/52388"}],"wp:attachment":[{"href":"https:\/\/michaelhans.com\/eclecticism\/wp-json\/wp\/v2\/media?parent=26417"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/michaelhans.com\/eclecticism\/wp-json\/wp\/v2\/categories?post=26417"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/michaelhans.com\/eclecticism\/wp-json\/wp\/v2\/tags?post=26417"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}