Updating an AkashaCMS site to use Bootstrap v4.3.x(February 25, 2019) Bootstrap v4 has been out for a long time, and it's high time we here in the AkashaCMS project moved forward. I've just gone through the exercise of converting akashacms.com to use Bootstrap v4, and should therefore document what I had to do. It wasn't terribly hard but I think it was harder than necessary, and will study how to streamline the process.
Announcing AsciiDoc rendering support in AkashaCMS, another easy-to-edit text format option(August 25, 2017)
The big goal with AkashaRender is simplifying the content editing experience. Until now that meant encuraging the use of Markdown when editing content, and EJS for writing templates. Markdown isn't the only easy-to-use content format. AsciiDoc is widely used especially in book authoring, and is far more powerful than Markdown.
Initial AsciiDoc support has been added to AkashaRender. This post is being written with the AsciiDoc Renderer, and the AkashaCMS Example website has a corresponding test page.
Collapsing figure/img tags into simplified fig-img tag(August 11, 2017)
A purpose of a system like AkashaCMS is simplifying the work of content authors to more efficiently write their content. The task of simplifying work is multi-faceted and can be taken in many different directions.
The task at hand was to collapse the <figure>/<img> combination into a simplified tag.
This combination is the preferred way of presenting images, especially when there's to be a caption.
Building EPUB electronic books and websites on your laptop, no server-side tools required(August 6, 2017)
Yesterday I announced the 2nd edition of Creating eBooks with Markdown and Open Source Tools is available on the Amazon Kindle store, and will be available on other marketplaces soon. I also tangentially talked about the lack of other tools with similar capabilities. It seems from my incomplete survey of the market that software to create EPUB's or static HTML websites usually require either an installed server-side rendering system, or else a heavy-weight WYSIWYG desktop-publishing application.
What the AkashaRender, AkashaCMS, AkashaEPUB system offers is lightweight tools that run on your laptop yet produce websites or EPUB's built using the latest web techniques.
Let's talk about that for a bit.
Published 2nd edition Creating eBooks with Markdown and Open Source Tools(August 5, 2017)
In June and July, I set about updating the AkashaCMS toolchain to be based on AkashaRender. The AkashaEPUB toolchain also had to change, and that necessitated a new edition of Creating eBooks with Markdown and Open Source Tools. This book is the official guide for using AkashaCMS/AkashaEPUB tools to build electronic books. The major feature addition, despite it being much easier to configure AkashaRender to produce EPUB's, is that you can now publish to both EPUB and Website from the same content.
I haven't found another system to do that - to publish exactly the same content as either EPUB or a Website. Okay, that's not quite right since Gitbook can publish to EPUB, MOBI, PDF or online. However, Gitbook limits you to using their servers which just doesn't make sense. Rendering EPUB's and Websites is a lightweight lightweight enough to run on your laptop. Why use a SaaS eBook-publishing system that ensnare's you into using their server? With AkashaEPUB, you get a light-weight system that can run on any computer, and publish EPUB's or websites.
Published AkashaCMS-External-Links, adding "rel=nofollow" and icons to outbound links(July 3, 2017)
It's now required that outbound links to sites that pay money (e.g. affiliate marketing) be marked with rel=nofollow. Your visitors might feel comforted being informed that a link leads to an external site, and perhaps to know what site that is.
AkashaCMS-Embeddables overhaul, huge simplification(June 28, 2017)
The akashacms-embeddables plugin has long been a sore thumb, being overly complicated in part because of the wide variety of methods for embedding content from other sites. It may seem utterly simple when you paste a URL into a Facebook or Twitter status message, or a Wordpress blog post, and voila the embedded HTML snippet automatically pops up. Under the covers certain kinds of magic is done with oEmbed and OpenGraph protocols. A couple years ago when I started the akashacms-embeddables plugin that stuff either was immature, or I didn't understand it, or didn't know about it, or something, but the initial versions of the plugin didn't take advantage of those protocols, and instead had lots of special casing and hard-coded understanding of how to construct a Twitter iframe.
Now that the new AkashaRender-based system is published, I wanted to take the opportunity to clean up the akashacms-embeddables plugin. I've found a pair of packages that make retrieving oEmbed and OpenGraph data very nice and easy.
Massive change, AkashaCMS is gone, replaced with AkashaRender(June 27, 2017)
A couple years ago I grew dissatisfied enough with the design of akashacms, the previous processing engine in AkashaCMS. It was a powerful system, with it I built several large websites, wrote a book, and so forth. But its inner structure had grown organically into a bit of a mess. My pondering about what to do led me to implement a complete rewrite. The new rendering engine, AkashaRender, is more flexible and is more sensibly organized. It is also incompatible with the older system.
Over the last week I have deprecated the old akashacms-based system, and have published updates to everything including the plugins and this website. This blog post goes over what's happened.
Major upgrade to Mahabhuta, the server-side DOM processing engine in AkashaCMS(September 15, 2016) Mahabhuta can now, with its version 0.5 release, emerge from the shadows of AkashaCMS and serve a useful purpose in its own right. DOM processing in the style of jQuery is now possible in Node.js server applications. The update makes it more feasible to integrate Mahabhuta into applications other than AkashaCMS, including integration into Express applications.
How to add a free shopping cart and sell products on an AkashaCMS website(November 13, 2015) Supposedly selling products via a website and having a shopping shopping cart requires a dynamically generated website using a content management system. But, there are online store services which can be added to any website, even ones built as static HTML files.
Created skeleton for akashacms-blog-podcast(September 27, 2015) It occurred to me, potential AkashaCMS users need a helping hand to start a blog.
Added akashacms-footnotes plugin - EPUB's can get footnotes(June 7, 2015) In the book I'm writing now, I want footnotes. Therefore repurposing existing code was the order of the day.
AkashaEPUB received nearly complete rewrite - hugely simplified(May 19, 2015) The initial version of AkashaEPUB demonstrated the need to hugely simplify book configuration. That's been done.
AkashaEPUB 0.4.6 released, Guidebook posted to eBook stores(April 28, 2015) Achieved a major goal with AkashaEPUB - the guidebook has been successfully uploaded to several online eBook marketplaces.
AkashaEPUB 0.4.2 released, Guidebook written(April 20, 2015) Since the last news in February, I had the crazy idea to repurpose AkashaCMS to support building EPUB's. That's now finished, and a guidebook has been written.
Announcing AkashaCMS 0.4.1 - rendering chains, grunt integration, EPUB generation, and more(Feb 25, 2015 12:07 PDT) Major amount of work went on the last two weeks, restructuring AkashaCMS to allow pluggable rendering chains, using it in a Grunt workflow, and generate EPUB files.
Announcing AkashaCMS 0.4.0 - server-side jQuery, streamlined rendering, and more(Feb 14, 2015 12:07 PDT) Nearly a year in the making, with v0.4.x AkashaCMS is greatly improved, faster, uses server-side jQuery-style DOM manipulations, and more.
Upgraded akashacms-theme-boilerplate to Boilerplate v5, AkashaCMS 0.4.x release imminent(Feb 14, 2015) The Boilerplate team just released version 5, which has now been rolled into akashacms-theme-boilerplate.
AkashaCMS 0.4.x release on hold for Boilerplate v5(Feb 12, 2015) Since Boilerplate forms the basis for AkashaCMS theming, and since they just released version 5, it seems necessary to hold the 0.4.x release to integrate the latest Boilerplate.
Looking forward to AkashaCMS 0.5.x work(Feb 11, 2015 12:00 PDT) Now that AkashaCMS is reaching its 0.4.x milestone, what am I thinking of for the 0.5.x release
Created AkashaCMS organization to shephard AkashaCMS into the future(Feb 11, 2015) On the cusp of its 0.4.x release, AkashaCMS creator David Herron announces the ownership transfer of AkashaCMS to the new AkashaCMS organization.
Announcing the Blog & Podcast plugin(Feb 10, 2015) They say every content management system becomes a blogging platform. Whether or not that's true, it's just become true for AkashaCMS. A new AkashaCMS plugin allows the creation of multiple blogs within an AkashaCMS website.
Progress on jQuery-style templates for AkashaCMS (Mahabhuta)(2014-06-01 16:43) Since last weekend I've been working on Mahabhuta, the new element-oriented template system using jQuery's API, in AkashaCMS. The goal was to verify that it's useful by attempting to implement some important things with it. I'm happy to say that Mahabhuta is living up to what I hoped. I've been able to reduce complexity in AkashaCMS and the path is clear to perhaps removing the Kernel template engine, because the functionality I sought with Kernel is now available via Mahabhuta.
Major change in AkashaCMS - new model for rendering content, and jQuery as a template engine(2014-05-27 14:47) I'm about to release an AkashaCMS v0.3.x update that represents a major rewrite of the rendering system, and the addition of support to use the jQuery API on the server side to manipulate rendered pages. Both of the changes are major, and take AkashaCMS to a new level of flexibility. First, Website authors will be able to use any combination of template engine on each page, giving better flexibility over page formatting. Second, the capability to use server-side jQuery calls means a different approach to inserting content into the page (versus traditional templates) plus we can implement filters to make broad-based content tweaks.
Static HTML website builders (AkashaCMS, etc) slashes web hosting costs to the bone(2014-04-15 01:52) Today's web is supposedly about fancy software on both server and client, building amazingly flexible applications merging content and functionality from anywhere. What, then, is the role of old-school HTML websites? In particular, why am I wasting my time building AkashaCMS and not building websites with Drupal?
AkashaCMS v0.3.0 released - major rearchitecting, plugins, improvements, much more planned for v0.4.x(2014-04-15 00:44) I'm pleased to announce that AkashaCMS has reached version 0.3.0. This version has been over a year in development and isn't quite what I'd intended, but it is a result of the actual needs during the past year. The primary change was to architect AkashaCMS to support plugins, a move which allowed the creation of several useful plugins.
Preparing AkashaCMS for 0.3.x, adding plugin support(2013-08-04 21:08)
I'm going to be declaring AkashaCMS 0.3.x pretty soon, and I have an interesting new feature in the works. The idea is to support multi-way extensibility of the processing of a website via the configuration file. The implementation is a form of "plugin" that allows anybody to write a module that extends the configuration of an AkashaCMS site, add new processing functions, hooks at different steps of the processing, and add directories managed by the plugin containing assets, layouts or partials.
Okay, that was pretty dense so let's take it one step at a time.