Fx: a (micro)blogging server with Git backups and syntax highlighting

For about 4 years, I have always been running my own blog via Franklin.jl. It has been great. Franklin is a very good piece of software if you ask me, so I have no complaints about that. My only issue was that I noticed that the time between making changes and seeing the result was quite long. In the past, I even used to run loads of Julia code and my workflow run would take 21 minutes (see [ANN] PlutoStaticHTML.jl). Also I noticed that other blog posts were getting read less and less even though I was constantly busy trying to maintain the code. I think in hindsight this was a mistake. I learned that running code inside blog posts is probably not a good idea. Like papers, most blogs are ephemeral so it’s probably best to just write a good piece of text once and then call it a day.

So now that I knew that I don’t have to run code inside blog posts, I tried to optimize the time to publish further. That’s why I went full circle and went back from static site generators to a web server with editing functionality. But Wordpress was too bloated for me. So like all good programmers here in the Julia community I wrote something myself ;p. It’s called GitHub - rikhuijzer/fx: A (micro)blogging server that you can self-host.

You can see fx as a sort of “public notebook”. So like for example X/Twitter, when something pops up that you want to remember for later, you can quickly write it down and then later easily find it back. But now without paywall. It is your own site so you control it.

With fx posting a blog now takes less than a minute instead of 1 to 10 minutes (or more in the worst case). Like here on discourse, just edit the text and click publish.

I have managed to move all my older Julia blog posts over and it all works. Here is one about random forests or one about bayesian regression. The posts contain math, syntax highlighting, and images. I’ve also optimized the publishing and viewing on mobile so even on mobile all should work well.

So maybe this is interesting for people here too? The server takes only about one dozen MBs of RAM so it should be pretty cheap to self-host somewhere. Currently markdown and git-backups are supported. For the near-future I’m planning to show RSS feeds from other people on the blogroll like what matklad does at https://matklad.github.io/blogroll.html.

7 Likes