Does anyone have recommendation for a fairly basic blog system with (some of) these characteristics:
- can be hosted as GitHub Pages
- simple-ish to setup and to create posts
- an RSS feed would be very nice
I came across this jekyll-based tutorial, and it seems to check all my boxes:
- https://chadbaldwin.net/2021/03/14/how-to-build-a-sql-blog.html
Building a Free Blog with GitHub Pages in Minutes

How to build a blog for free, using GitHub Pages.

Chad’s Blog
Another workable example/tutorial, using 11ty:
- https://github.com/11ty/eleventy-base-blog
GitHub - 11ty/eleventy-base-blog: A starter repository for a blog web site using the Eleventy static site generator.

A starter repository for a blog web site using the Eleventy static site generator. - 11ty/eleventy-base-blog

GitHub

@justvanrossum Eleventy reminds me of Robofont in that it doesn’t force you to do things a certain way or make a lot of assumptions. Very easily extensible and lots of great plugins. I just added RSS to my site and it was very simple.

My site is connected to a git repo and it’s hosted by Netlify on their free tier, works great

@cjtype I went through the 11ty "base blog" demo and I got it working in a few minutes, with a new blog post. I like it very much so far.
@justvanrossum @cjtype Please post a link to your new blog when it’s stable! I will instantly susbscribe via RSS.
@cjtype Getting it to run and adding some content was easy enough. Customizing the layout... not so much. For example I have so far completely failed to add an icon to the page header.

@justvanrossum Hmm, I started by building everything in html and css and then copy/pasting things into template pages as needed. My templating was based on this boilerplate site: https://github.com/danurbanowicz/eleventy-netlify-boilerplate/

Most of my site templating happens in base.njk (from _includes/layouts/) and the <head> is included like this: {% include "components/head.njk" %}
which references head.njk (from _includes/components/) where I copy/pasted the <head> from my html file. Hope that helps!

GitHub - danurbanowicz/eleventy-netlify-boilerplate: A template for building a blog with the Eleventy static site generator and Decap CMS

A template for building a blog with the Eleventy static site generator and Decap CMS - danurbanowicz/eleventy-netlify-boilerplate

GitHub
@cjtype I have located the main template, and know where to store images, but the html way to reference the (svg) image doesn’t work. Googling njk img src does not give helpful results. I went from “easy to set up blog system” to “having to learn this huge system” and I already hate it.

@justvanrossum If it's an SVG it could in theory be pasted inline, right?

Or for the normal way of linking to an image, I have this code in my eleventy config file: eleventyConfig.addPassthroughCopy("images");

(It might need to be"./images" depending on your setup). Then whatever I put in the "images" folder in my base directory will get copied into my "_site/images/" folder when the site is built.

Config file:
https://github.com/11ty/eleventy-base-blog/blob/main/eleventy.config.js

addPassthroughCopy info:
https://www.11ty.dev/docs/copy/

eleventy-base-blog/eleventy.config.js at main · 11ty/eleventy-base-blog

A starter repository for a blog web site using the Eleventy static site generator. - 11ty/eleventy-base-blog

GitHub
@justvanrossum ah wait, I just re-read your text and I may have misunderstood the issue. I'm far from an expert but if you want I could take a look at the repo and see if anything obvious jumps out

@cjtype Thanks!

In that config file /public/ is already pass through, and when I place an image in /public/img/ I do see that it gets included the output tree (https://blog.fontra.xyz/img/fontra-icon.svg), however, I can't seem to find how to *reference* that image correctly in _includes/layouts
/base.njk. https://github.com/11ty/eleventy-base-blog/issues/200

@justvanrossum @cjtype That *is* the right way to include it, maybe it’s being served with an incorrect MIME type? otherwise there’s little that could get in the way...
@justvanrossum @cjtype Ah, the eleventy blog starter has the image transform plugin set up, that’s doing a bit of magic under the hood, reprocessing <img> tags.
@db @cjtype so what should I do instead?
@justvanrossum @cjtype the starter repo tries to be immediately useful, but automatically processing images across the board like that is too overreaching for my tastes and the magic can be confusing, so probably I would remove the image processing plugin for now, but that might require adjusting the images in your posts. As a quick fix, <img eleventy:ignore src=""> should do it: https://www.11ty.dev/docs/plugins/image/#eleventy-transform
Image

A docs page for Eleventy, a simpler static site generator.

Eleventy

@db @cjtype Awesome, that workaround works!

(But... whyyyyyyyyyy)

@justvanrossum @cjtype (I’ll add a longer answer to your GH issue from the office)
@db @cjtype When I do as described in the issue, the img src becomes http://localhost:8080/content/img/fontra-icon.svg
instead of
http://localhost:8080/img/fontra-icon.svg
This obviously does not work.
@justvanrossum github pages is jekyll, you can build a simple blog with rss. I hear also big fans of 11ty, also easy to host on github

@justvanrossum
Many of the static site generator blog engines can do this. Hugo is popular. I used Python based nikola for years, which does this, and switched to zola last year, which also works like that. Jekyll you already mentioned.

You have them written in lots of programming languages. I think in part because one cognitive pitfall for programmers who want to write a blog is to get sidetracked to write their own engine "first".

@faassen I probably should have phrased my question more like this: "who knows of simple-to-follow instructions that help me set up such a thing" :)

@justvanrossum
Ahh, I haven't done github pages myself.

Apparently Jekyll is the default for those so that might be simplest.

Zola has docs but I imagine most of them do, still maybe it will help:

https://www.getzola.org/documentation/deployment/github-pages/

Implementation of your own blog tends to involve an intense period of endless tinkering plus conversion of your old entries if you have those...

https://blog.startifact.com/posts/blog-refresh-2024/

GitHub Pages | Zola

Everything you need to make a static site engine in one binary.

@justvanrossum Design Regression, All types of “a”, MrBrezina.com, and Rosetta website are all GitHub Pages/Jekyll. The first three are public repos, feel free to take a peek.

@justvanrossum I'm pretty satisfied with hugo. It got a guide for Github pages deployment: https://gohugo.io/hosting-and-deployment/hosting-on-github/

Setup for getting started is also simple-ish if you go with default templates.

Customizing templates requires HTML/CSS skills and learning a bit about the go template system used.

Host on GitHub Pages

Host your site on GitHub Pages with continuous deployment using project, user, or organization pages.

@justvanrossum you can do that with Pelican: the Python-based static site generator created by Justin Mayer 🐍

Here the docs to publish as GitHub pages 👇
https://docs.getpelican.com/en/latest/tips.html#publishing-to-github-pages-using-a-custom-github-actions-workflow

#Python #Pelican #SSG #Static #Pages #GitHub

CC @justin

Tips

Here are some tips about Pelican that you might find useful. Custom 404 Pages: When a browser requests a resource that the web server cannot find, the web server usually displays a generic “File no...

PELICAN

@paulox Indeed, those docs should make it straightforward to set up a Pelican-powered site hosted via GitHub Pages.

@justvanrossum: Let me know if I can be of any assistance!

@justvanrossum I'm using this Hugo theme hosted on GitHub Pages. Posts are Markdown, and it comes with an RSS feed: https://jpanther.github.io/congo/
Welcome to Congo! :tada:

This is a demo of the Congo theme for Hugo.

Congo

@justvanrossum how simple do you want? Because unk is just 30LOC of bash and awk and my fork gives you RSS:

https://github.com/tekknolagi/unk-template

GitHub - tekknolagi/unk-template

Contribute to tekknolagi/unk-template development by creating an account on GitHub.

GitHub
@justvanrossum GitHub Pages uses Jekyll for building static websites but it only supports v3.10, latest Jekyll version is 4.3. And if you want to preview the site locally then you must use Ruby which Jekyll is built on. Since I don't want to use an old version of Jekyll and I don't want to use Ruby, I made my own static site generator called Genja for building GitHub Pages sites. https://github.com/wigging/genja
GitHub - wigging/genja: Static website generator

Static website generator. Contribute to wigging/genja development by creating an account on GitHub.

GitHub
Pelican – A Python Static Site Generator

Pelican static site generator

@justvanrossum Once you set up Jekyll it is easy to write blog entries online by adding new pages to the _posts folder and writing them in Github Markdown. You can even use your own domain. As soon as you save your file, a Github action will kick off and publish your changes.
GitHub - barryclark/jekyll-now: Build a Jekyll blog in minutes, without touching the command line.

Build a Jekyll blog in minutes, without touching the command line. - barryclark/jekyll-now

GitHub
Creating a blog with Sphinx

Finally, I’ve taken the step of restarting my blog, and with it, the migration process that I wanted to undertake. On this process, I’ll be telling you about it in several entries, since the migrat...

Cosmoscalibur
@justvanrossum I am content with Hugo, with a GitHub action to publish to GitHub pages. Only other static generator I used is Jeckyll.