Blogroller: Blogging platform built in Node-RED

Hi There!

I've continued on with trying to find something useful to do with Node-RED and spent the weekend creating a simple blogging platform - blog.openmindmap.org is the result. It has all of two blog entries, so don't expect too much!

What was interesting was creating the moving parts:

  • feed.xml for RSS
  • favicon support and content delivery that isn't text
  • mustache template replacements in markdown to create more markdown
  • building the routing to support multiple domains (I.e. demo.openmindmap.org v. blog.openmindmap.org)
  • link-call with dynamic target

The basic idea is that there are "special" link-in nodes that represent articles. When a request comes in, e.g. /blog/blogroller, a link-in node is triggered with the name "[blog] blogroller" - that allows me to create new pages simply my creating a new link-in node with the corresponding name. The link-call with dynamic target was the key to this architecture.

A link-in node can also contain some YAML (in the info box) which defines certain parameters for the RSS feed (i.e. title and summary). This idea was taken from Jekyll (ruby-based static site generator). I've tried as much as possible not to repeat stuff, i.e. titles, paths, urls, etc and came up with the YAML-in-the-info-box solution for that purpose. (Funfact: valid YAML can be formatted to be valid markdown!)

The whole blog is based on my mind-map idea (i.e. using Node-RED as a mind-map tool) and each blog article is intended to be mind map, i.e. flow, that is executed by Node-RED. Each page (of the two aforementioned pages) has a link to the source flow for that page. The main blogroller flow is online in exportable read-only format.

This is very much Work-In-Progress and intended to be another demonstration of what Node-RED can also do.

Hope this is useful :slight_smile:

Cheers!

2 Likes