Discourse as a simple personal blog engine

I use Discourse a lot, across my small number of health-related fora and of course via my work with thepavilion.io with @angus @merefield @fzngagan @Ellibereth and I find the more I can use Discourse, the more I can familiarise myself with all the features, plugins, theme-components, and ecosystem.

For nearly 10 years I’ve had a GitHub Pages static jekyll site as my personal/work blog, and I decided to revamp this, and thought I’d try setting myself up with a Discourse instance as a blog. Today was an ideal day to do it because I’m supposed to be doing something else (rewriting my CV/resumé for a job application) so obviously what I needed was a nice pro-crastino-ject like this, transferring content from the static site to the blog etc…

It’s worked fairly well, and with the addition of Topic List Previews showing excerpts of the blog posts, I’m pleased with the result. It could do with some more visual tweaking, but as a starter it’s fine.

Blogs are mentioned in a few other Meta posts, but they are mainly about using Discourse as a backend for a static site, or as a commenting engine for a WordPress blog, not as a blogging engine in its own right, so I thought it’d be worth writing up this native blogging usage.

I also have some private categories in that same blog, where I put notebook notes, reference material, and other stuff I’d possibly put in a GH Gist otherwise (but here without the dreadful Gist UI and laggy interface!)

If anyone has any helpful suggestions for either improving that blog, or plugins/theme components for using Discourse as a blogging engine, then please do comment.


How do you think it works?

It’s a nice Discourse site but I couldn’t tell it was a blog because I also expected to see the latest blog rather than a list of headings. But I’m not a regular reader of blogs so maybe I’m just out of touch with what people expect now.

I had a look because you said the magic words “Topic List Previews” which often leads me to pretty or punchy pictures accompanying the text. I think that some good graphics or photos will increase attraction.


I think there might be a case for a plugin here which would show the full text of the latest blog post at mydomain.com/blog. If could even be an extension to Topic List Previews.

TLP allows excerpts, which is all I’ve gone for here, hence the lack of nice pictures and thumbnails


There is a hidden site setting for this :grinning:

rails c
SiteSetting.always_include_topic_excerpts = true

I believe it just add the data to the JS model, so you still need a client change to actually show it.


Have you seen the Blog Post Styling theme component @pacharanero? Could be an interesting add.

I do agree that it doesn’t feel much like a blog (yet), but I really like the direction you’re going!

You could also run Discourse as a sort of “headless” CMS, too. I’ve thought about the idea but haven’t dug too deep into it.


And don’t forget the News Plugin 📰 which is itself a reskin on top of Topic List Previews. (and requires the latter to be installed).


Cool idea!

I am a moderator on the forums for the Hugo SSG, and I think about static sites and Discourse a lot. :slight_smile: I use an instance like ya’ll at Pavilion (faerie ring ventures), keep a personal instance for notes/tasks/inbox, and another for hanging with my peeps and commenting on everything.

Almost all the pages on my commonbook site links to discussions on the forums, and I pull them in using data templates in Hugo (getJSON).

I don’t load comments, because I actually like keeping the conversation where it is happening (Discourse).

Okay, there were some random thoughts, here’s a fun thing I’m looking forward to: Hugo’s roadmap includes page generation from data sources. Currently you need a piece of content in a text file for a template to operate on. But eventually you’ll be able to point it at a feed and produce the output you want.

I’m already designing sites that generate the output from content generators like Discourse and WordPress, though seriously anything producing JSON will work!

Maybe one day you’ll be blogging it up and discussing with your audience from the comfort of Discourse/email/API, while generating a sweet, fast, slim static site with the crucial UX easy to apply.

Pretty neat stuff. :sunglasses: