Pelican and Jekyll - Optimising the output is bit hard because most of the tools for that exist in the JS ecosystem. If you are not that concerned about stuff like inlining critical CSS, image optimisation, CSS and JS traspilation, these could be good choices.
Hugo - Pretty much the same issues with Jekyll and Pelican, and the templating language also leaves a lot to be desired. If build speed is paramount to you, choose this.
11ty - I just benchmarked lego against this and it looks like there is only a couple ms difference performance wise. The only real difference is that 11ty lets the users configure everything and decide what kind of optimisations they want(or if at all they want it).
lego supports the templating languages of both Pelican and Jekyll and is reasonably fast as well. It also optimises the output build as much as possible. If at all you decide to use it, please share your feedback.
Another important factor, in your case, might be the availability of templates. Pelican, Hugo and Jekyll should have readymade templates for most use cases and should save you time spent on designing the layouts, writing CSS, etc. I am not sure if 11ty has such an ecosystem. lego definitely doesn't have any templates and you might want to factor that in your decision.
I hope this answers your question. Also, all the best with your dissertation :)
Released v3 of lego, a JavaScript based static site generator.
Supports Liquid and Nunjucks for templates and Markdown for posts, and YML, JS and JSON for data. Produces an optimised website as the output.
My own site, which has about 84 pages takes under a second to start a development server and about 40 seconds to run a production build(asset minification and versioning, HTML minification, inlining critical CSS, sitemap generation, etc.).
> My site is very significantly slower for first load, but slightly faster for all subsequent loads.
This can be easily accomplished with Jekyll as well using Service Workers. What Gatsby has done is to take all the good practices and optimisations that can be done to a static site(like image optimisation, asset minification, prefetching) and bundled them all together. A lot of these can be done using any static site generator. For example, Gatsby prefetches links on hover/entering the viewport. This[1] ~1kb JS is sufficient for that.
I can attest to how rewarding this can feel. I wrote a static site generator for my site as well[1] and it looks like both of us have a lot of common goals. I agree with you in that a lot of the existing SSGs are bloated out of the box and do not really focus on optimising the end output to site visitors. Gatsby is the only exemption to this but writing my blog in JSX isn't too appealing.
Hugo - Pretty much the same issues with Jekyll and Pelican, and the templating language also leaves a lot to be desired. If build speed is paramount to you, choose this.
11ty - I just benchmarked lego against this and it looks like there is only a couple ms difference performance wise. The only real difference is that 11ty lets the users configure everything and decide what kind of optimisations they want(or if at all they want it).
lego supports the templating languages of both Pelican and Jekyll and is reasonably fast as well. It also optimises the output build as much as possible. If at all you decide to use it, please share your feedback.
Another important factor, in your case, might be the availability of templates. Pelican, Hugo and Jekyll should have readymade templates for most use cases and should save you time spent on designing the layouts, writing CSS, etc. I am not sure if 11ty has such an ecosystem. lego definitely doesn't have any templates and you might want to factor that in your decision.
I hope this answers your question. Also, all the best with your dissertation :)