Today I have migrated my blog onto completely new codebase. Commenting does not work yet but I should get it working soon. I wanted to reuse my blogging engine for more sites but it was not doable with the existing code. I had to split the code into multiple packages to overcome this. The resulting packages are:
Generic document-oriented in-memory database for storing pages and metainfo. Very similar to the old persistency.pl-based solution but the code more high-level. Accessing the database does not require manually locked mutexes. The code can be accessed from here. Manual is missing at the moment but all predicates in the source are commented.
The blogging/CMS framework. This uses the docstore package for storing data. Generic admin interface is provided for managing documents. Manual is missing at the moment and some things are incomplete but generally the code works. Code is here.
Enhancement to http_dispatch. Uses path terms (example:
api/resource/Id) that can contain variables. Handlers are also separated by HTTP method (GET, POST, PUT, DELETE). Documented and tested. Code is here.
There have been no issues with displaying posts so far but editing is not quite right yet. It will take some time to get things perfect.