loading...

What is the simplest static site framework?

ben profile image Ben Halpern ・1 min read

What is the most minimal, straightfoward, and simple static site generator?

Maybe not the best, but the one with fewer moving pieces and an easy onboarding.

Discussion

markdown guide
 

Not a framework, but the simplest SSG for me is Eleventy: 11ty.dev/

Jekyll is great if you are used to dealing with Ruby on a day to day basis. Eleventy is JS based and as I deal with JS everyday it feels way more easier to use to me.

 

I can agree with that, Eleventy is great. I'm also mainly JS based so it just feels right to use it.

 

I just tried it out. Definitely impressed by the simplicity!

 

I've been wanting to try a static site generator and Eleventy is on my list to try.

 

There is a clear documentation an a great community around it, which is really nice :)

Good luck on your trials ^

 

I would suggest netlify.com/. It is great for static sites. Recently, I tried using this for my react project and it is cool to use. It is integrated with Github. Whenever you make changes to your repository, the changes will be automatically reflected on your site which is hosted using netlify.

 
 

I like pure HTML+css but I do think markdowns and templates are useful.

 

Then Grav is probably a perfect candidate. It uses markdown files to generate static HTML pages.

 
Sloan, the sloth mascot Comment marked as low quality/non-constructive by the community View code of conduct

If you need a templates this is not a static site. So specify question if you need more correct answer.

wtf? Arguments please ? Definition of a Static Site ?

Yeah, I don't think that's true. If your server is crunching templates and then delivering entirely static content, I don't know why that wouldn't count.

A static website is one that is rendered on requests without extra interventions from the server. So the server responds with a document from the file that sits on the requested location and that's it. When one build a website with a static site generator, although the process is dynamic, the end result is a static website. At least, that's how I understand it!

Yeah, the templates here are part of a build step. Things are still static in the end.

But on the topic of a "dynamic site" which is actually kind of static: dev.to

We serve our pages statically from the edge even though they are dynamically generated. The initial requests to pages on this site are static HTML that never hits our server about 90% of the time.

After I submit this comment, we will re-compute and serve dynamic, but every pageview thereafter will be static until the next change on the page.

Static site - is a site that content isn't depend on any external data like GET/POST, time etc.

But templates/framework means you want to substitute some parts on pages on-the-fly. So I asked you to make you question more accurate to understand what exactly you need. Static (or looks like static) sites can be build with a range of tools - from simple text editor to CMS like Wordpress.

Do templates always mean on-the-fly replacement? I'm using them as a means of abstraction for my current project, but by the time a client makes a request everything is already baked. Does the fact that I used a template in the compilation stage, well before deployment, make my site not static? They really only make a difference to the developer, the fully-substituted HTML is actually stored on on the server and is what's ultimately served.

No. Not only on-the-fly. But the need of templates depends on many things. It isn't necessary if you want just to make site and forget about it. But if you need to make new pages every day - maybe it will be useful.

 

It's definitely not the easiest, but the documentation is excellent and it always has the answers I need: Jekyll.

The fact that it works with GitHub Pages without any configuration is amazing. It's not the easiest, but you have great references to get started!

Adding this to my reading list, I'm very interested to see what others post!

 

I think Jekyll's maturity relative to the other frameworks helps a bit too. There's a lot of documentation and guides for setting things up, extending base functionally, etc.

 

Eleventy is as simple as it gets

npm install -g @11ty/eleventy
echo '# Page header' > README.md
eleventy
 

Seems to be Parcel.js bundler

You can glob -- parcel build "src/**/*.html"

11ty is another good one, but I don't know how to bundle with JSDOM or pupetter for *.11ty.js.

There is cogear.js, but it seems to be unmaintained.

 

Just write your own in plain ruby with no framework.
Ruby standard has erb integrated.

I wrote one for my other startup because I wanted to just use lambda to generate out the static files instead of having to use CodeBuild.

It generates out 100,000+ of html files within a few minutes, and I just wrote a bit of logic to diff for new files.

 

Do you do markdown parsing as part of this process?

 

Nope, I only use what is provided in the standard ruby library. Its nice when you don't have a gem file since it makes bundling much easer for Lambda functions.

I could certainly include RedCarpet. I believe it relies on some native extensions but I could just create a Lambda Layer if that is the case.

I have lambda functions that run queries against my RDS database and that then download data into a json file.

That json file is then read and used to generate out static files. I just pass the data to erb files.

 
 

I love the simplicity and power, and mad respect to the framework. That being said, I messed up a link to one of my markdown files and I took 2 hours to figure out what happened. sapper export only seemed like it gave me the last line of the exception trace 😭.

I'm a n00b to Sapper though, so I figure with some extra docs or a flag (or both!) this thing could be friendly and powerful 🎉

 

My SSG of choice right now is Eleventy (11ty). I like its simplicity and flexibility (it pretty much does what you want). 11ty is also Node base witch is convenient if your development environment is already Node!

 

I used Middleman for a long time, because it's very familiar to anyone with Rails experience. Eventually switched to Hugo though because it is so fast.

 

We use middleman for codelandconf.com and I definitely like it.

 

A good editor and HTML 😝

But for real, I've had some good success with Markdown+Pandoc and basic HTML, rendered in a Makefile.

 

I use Jekyll. But only because I'm to lazy to check out other static site generators :D

 

I wrote one a couple months ago in node. It originally had markdown support using a library called Showdown, (markdown in html out) but I dropped it in favor of the flexibility of pure html 🤷🏼‍♂️ it's only a few post end points, the whole thing is pretty short but it works for me so far. It has an editor app I wrote too.

 

I've only used Gridsome - gridsome.org/

But it was so easy, I can't imagine any other being more simple. :)

 

getpublii.com/

Publii cms. I found it on the headlesscms.org site.

Here is my site built with this. Try this once

ajeet.dev

 

Jigsaw is my favorite so far. I only tried Hugo and found Jigsaw much easier. It doesn't have as many out-of-the-box features as Hugo but you have the full power of PHP at your disposal and uses the wonderful Laravel Blade syntax for creating templates and populating them with data.

 
 

Yes, and they seem to making great progress every release refining it into a greater piece of software

 

I haven't tried a lot of them but between Jekyll, Publii, Hugo and Nikola I like Hugo the best. I recently tried MkDocs as well and like it a lot too. The only problem with Hugo (for me) is that I am not too comfortable using the templating language in Go. I preferred MkDocs as I am used to Jinja more.

Here is my Hugo site with a custom theme blog.naveeraashraf.com
And a MkDocs site with Material theme arabic.naveeraashraf.com

 

The static site generator I wrote, of course! :-). It uses a single Markdown-ish input file to generate the static site (main focus is a blog) and you can either use the Perl or Python version. I use it for my blog Plurrrr.

 

I think you're asking two questions which is why there is a split of replies.

I think something like Jekyll or Hugo, while not the simplest, have huge communities with lots of resources and have addressed lots of problems you may encounter so doing something with them is quick despite them not really being simple.

Then there are minimal generators that have minimal amounts of code and then it depends on which languages or tools you feel most comfortable with. Writing your own file processor is quite simple as people point out and you can usually get by with a single file solution.

 

Checkout Static Gen - it's a list of Top Open Source static site generators!

staticgen.com/

 

I know my reply is a bit late, but I was checking these out myself.
Ended up making my own - Saishō. Very educational and fits my needs.

 

Panini - A super simple flat file generator.
11ty - not just simple, is super smart at the same time.

 
 
 

I used 11ty, Gatsby and Nanogen.

It is definitely Nanogen.
doug2k1.github.io/nanogen/

 
 

i think Hugo is good for you, for themeplating you just need basic Html+Css+Js and some basic Golang. for post, Hugo is using Markdown format

 
 

I'm really impartial to anything using React: Next.js and Gatsby are two great options!

 

11ty is love. 11ty is life.

 

Vitepress

The new kid on the block that uses Vue 3! 😇

 

there's this low hanging fruit I found from suckless site:
a bsh script called ssg.

 
 

You should definitely check out Sergey. It's super small and simple, intentionally.