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.
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.
For further actions, you may consider blocking this person and/or reporting abuse
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'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.
Pure html+css
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.
If you need a templates this is not a static site. So specify question if you need more correct answer.
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
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.
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!
Sapper!
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 🎉
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 just tried it out. Definitely impressed by the simplicity!
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 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
I've only used Gridsome - gridsome.org/
But it was so easy, I can't imagine any other being more simple. :)
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.
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 have found TezJS a very easy and amazing Static Site Generator.
TezJS uses Vue as a primary language and helps you build JAMstack website. Even though, if you have a basic understanding about JavaScript, you could easily build website using TezJS.
GitHub - github.com/tezjs/tezjs
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.
Jekyll
Yes, and they seem to making great progress every release refining it into a greater piece of software
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.
We use middleman for codelandconf.com and I definitely like it.
getpublii.com/
Publii cms. I found it on the headlesscms.org site.
Here is my site built with this. Try this once
ajeet.dev
Gatsby
It's great but certainly not easy with graphql.
Panini - A super simple flat file generator.
11ty - not just simple, is super smart at the same time.
Jekyll
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.
I love Nuxt static site options. I’m using it for my portfolio here.
there's this low hanging fruit I found from suckless site:
a bsh script called ssg.
I'm really impartial to anything using React: Next.js and Gatsby are two great options!
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.
I used 11ty, Gatsby and Nanogen.
It is definitely Nanogen.
doug2k1.github.io/nanogen/
Just going to leave this here.
nextjs.org/
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
Sapper
Hugo
Hi,
Sorry I'm late to the party! You may prefer to take a look at mkws.sh/.
You can go old school, and just use plain HTML and CSS.
For static website forms fabform is good choce too.
I asked myself the same question then I built a simple vanilla PHP & HTML static site generator that deploys to GitHub Pages by default: github.com/atas/ssg
I hope it becomes useful.