
Static Site Generators - zx1986
http://staticsitegenerators.net
======
skywhopper
Apparently the site about Static Site Generators is experiencing application
problems and is unable to serve content at the moment. Should I be amused or
enraged?

~~~
oddevan
This feels like irony. Is this irony?

~~~
bradleyland
It would be a better case of irony if the site were using a static site
generator instead of a web app. That sounds a little unlikely though:

"Site about statis site generators taken down by static site generator scaling
issues."

~~~
balupton
The site uses DocPad, a static site generator.

The downtime was caused by the YAML file having invalid syntax so it would not
parse. Whenever a modification to the YAML file is made, a github post hook is
sent to the server telling it to regenerate the website.

Normally this happens smoothly without anyone noticing any downtime, while
maintaing awesome performance.

In this case because of the bad YAML, DocPad crashed, as it was told to, and
the logs showed the error.

I was sleeping at the time so did not notice the issue.

The latest version of the website now handles this gracefully, using the
latest successful data if the YAML is bad, as well as showing an error
message.

------
__david__
Static site generators seem like music databases, in that everyone eventually
writes their own crappy one that just barely scratches the itch they had (and
I'm no exception).

~~~
mikeleeorg
Now that you mention it, building a static site generator would make a great
learning exercise for a new programmer. Since they are a fairly common
personal project, there are a lot of examples from which to examine.

~~~
mercer
Indeed! While I learned a lot from Rails' because of how it prescribes a
certain structure and approach, the size of it all and the 'magic' that hid a
lot of (important) detail was probably suboptimal.

Now I'd been building websites for a while, so I'd already gone organically
through the whole 'hey let's use php to cut my pages up into reusable
modules', 'I can automate this thing here', 'plugins are awesome!', and 'hey
what's this MVC thing'.

But for people starting from less, a static site generator might be more
explicit and less complex to learn with.

The mere fact that there's often a 'build' step that converts your stuff to
plain html, javascript and css, I find, makes beginners feel like they
understand things a little better.

------
hpaavola
Is ther any CMS/blog/... type of thing that would create flat files, but keep
all the content also in DB?

That way search and comments (and especially moderation for comments) would be
easier to handle, but still it would be easy on the server.

For my own site I created something like this,
[https://github.com/Harri/Spage](https://github.com/Harri/Spage) , but instead
of DB, I used another set of flat files (serialized arrays containing the page
content + some meta data) for management purposes.

~~~
wldlyinaccurate
Usually that can be achieved with a cache like Varnish. One of the biggest
benefits of static site generators is that the only software you need on your
server is a web server. As soon as you want to start adding things like search
and comments, you lose that benefit.

~~~
pdwetz
You can use third party tools for both search (e.g. google site search) and
comments (e.g. discus). Of course, if you want to customize things further
with user-supplied content, at some point you'll need a dynamic backend.

------
BenDoan
I'm really pleased with FrozenFlask. It lets you develop a normal site with
python and flask with all of the flexibility: routing, databases, modules,
etc. that you'd expect while still outputing a static website. I made my
current blog site with it.

[https://pythonhosted.org/Frozen-Flask/](https://pythonhosted.org/Frozen-
Flask/)
[https://github.com/bendoan/bendoan.me](https://github.com/bendoan/bendoan.me)

~~~
icebraining
Did you need to write any URL generator, or was it able to identify all URLs
by itself?

~~~
BenDoan
You need to write simple flask routes for the different pages, but nothing
complicated. Frozen Flask will automatically find all of your pages.

------
fractalsea
I didn't see Hakyll [1] on the list. It is a minimal static site generator
written in Haskell. I have just set it up for my first personal site [2]. It
is my first experience using a static site generator, and so far I can highly
recommend giving it a go.

[1] [http://jaspervdj.be/hakyll/](http://jaspervdj.be/hakyll/) [2]
[http://willsewell.name](http://willsewell.name)

~~~
stevekemp
When I was reviewing existing static site generators I couldn't make Hakyll
install - but this was back under Squeeze (Debian).

[https://github.com/skx/static-site-generators](https://github.com/skx/static-
site-generators)

~~~
fractalsea
Did you try and install the package "haskell-platform"?

That's probably the easiest way to get Haskell up and running. Then it's a
simple matter of using cable to install other libraries, including Hakyll.

~~~
stevekemp
My memory is hazy, so I cannot say for sure. The fact that I didn't document
that as a requirement suggests that either I didn't know it was, or that I
did, but it didn't help.

Either way I will revisit this now there is a new Debian stable, and I can
install the package natively without using cabal.

------
slacka
My 60 yr old mother runs 2 small nonprofits, and is responsible for the web
content and design. She's a pro with Word Perfect, but gets confused by simple
HTML tags, and no interest, time, or aptitude to learn HTML/CSS/JavaScript.

Last weekend, she asked for help with her website, and I was shocked to find
out they still look like they're out of the late 90's. She does all of her
editing with a 2006 copy of dreamweaver in WYSIWYG mode.

I'm a huge fan of Jekyll, but she is scared by the Liquid/markdown syntax. I
was thinking of moving her to Visual Studio for Web or KompoZer. Anyone know a
better HTML editor with WYSIWYG mode and modern, beautiful templates or can
recommend one of these all 243 generators?

~~~
snide
You might like webhook.com.

We're launching in about a month. Basically, we're a static site generator
with a CMS. You don't even use YAML or front-matter. Just build your forms
with a local GUI, then pass yoursite.com/cms/ over to your Mom so she can edit
in a wysiwyg (or markdown...whatever). Design with normal css/html and Django
style templating.

I built it because I loved static site generators (some great tools in that
list), but they were all worthless for me as soon as I needed to pass the site
off to non-hacker friends. I wanted it to be easy on me and easy on them.
Using firebase and ember, we were able to load the entire CMS off a static
server (we still need a server to regenerate on changes though).

And before you ask, yes we're trying to figure out how to make it self-
hostable. It's a little harder for us, since we use a bunch of separate
services (firebase, elastic search, google image resizing...etc) to make it so
you don't need to install much locally, just Node. Small team at the moment,
trying to avoid VC investment and went straight to Kickstarter.

For everyone else who just likes SSGs and don't need a CMS, I'm a big fan of
Harp and Cactus. The later because I came from a Django background.

If you're looking at a WYSIWYG from a design standpoint you might like
something like [http://macaw.co/](http://macaw.co/)

~~~
jessaustin
Do you think "webhook" might be kind of a confusing name? That's already a
thing, and a different thing at that. It sounds to me like a model of
automobile called "Motorcycle".

------
rmc
Is there any static site generators for photos? Something like "host your own
flickr"? Something that uses exif tags, directory hierarchy, etc to make a
static browsable list of your photos?

~~~
raving-richard
Build your own. I've written something like that. It's not static, because I
don't want to have to rebuild everything just 'cause I added a new photo, or
fix a type. However, you do literately just use the file system to add and
manage photos. I won't link to it because I don't want to link to my real ID.

But it's pretty simple. You just have to recursively go over the folder, and
get each photo. Make sure there is a thumbnail, and build your HTML.

~~~
rmc
Yeah I was gonna do that, but wanted to check if anyone else had done it
before I reinvent the wheel. :)

~~~
raving-richard
Where's the fun in that? Re-inventing the wheel to scratch your own itch is
part of the process of improving yourself as a developer.

:p

------
davexunit
I've been using Pelican as my static site generator of choice, but I'm
frustrated that Markdown and ReStructured Text are the only formats it can
handle. I chose ReStructured Text over Markdown, but what I really want is to
write org files. I've been meaning to roll my own solution in Emacs Lisp using
org-publish plus some custom functions to generate RSS feeds, but I haven't
gotten around to it yet.

~~~
davexunit
I found a cool project called org-page that looks pretty good.
[https://github.com/kelvinh/org-page](https://github.com/kelvinh/org-page)

I have some concerns about its architecture in that it's too integrated with
git repositories, but it looks like a great place to start from.

------
cwyers
I did a doubletake when I was skimming the list and ran across a blogging
engine written in Fortran.

------
mskierkowski
Something similar: [http://staticgen.com/](http://staticgen.com/)

Same idea, but staticgen.com is a little easier to navigate but don't think
it's quite as comprehensive.

~~~
bobfunk
Thanks for the mention - we're working on a new version that'll be open-source
and more comprehensive (though still limited to open-source static site
generators).

Stay tuned :)

~~~
jaspervdj
I like the additional info on that site! Would you want to consolidate efforts
and use:

    
    
        https://github.com/jaspervdj/static-site-generator-comparison/
    

as an underlying list, too? Maintaining a listing is pretty tedious with all
the SSGs out there. I can set up web hooks and whatever to push to your
servers if the listing changes.

------
srpablo
Missing Frog!

[https://github.com/greghendershott/frog](https://github.com/greghendershott/frog)

Fun little list :D

------
sgdesign
Random observations:

\- Aren't Jekyll and Octopress basically the same thing?

\- Really impressed at how fast Metalsmith is growing. Might have to give it a
try soon.

\- For now I give my vote to Middleman.

~~~
Uehreka
Octopress is built on top of Jekyll and is geared towards making blogs to host
on Github Pages (they'll run jekyll, but not any plugins, so you need to have
a weird deployment setup if you want to use things like Haml and Sass). Jekyll
itself is more of the lightweight, no-frills vanilla version.

~~~
jacquesm
Octopress runs just fine without github.

------
balladeer
I am a Python beginner (being a Java dev day-jobber I've been so for more than
a year now) and I badly wanted to have a good static site generator written in
Python so that I could learn/practise Python while using it, by tweaking it to
my needs. I was surprised to see the lack of support and documentation Python
site generators suffer from - even Pelican which is a distant third on the
pedestal (of stars in the list). I finally settled with Jekyll as even
starting was difficult in one of those Python site generators. So seeing
Jekyll having close to 5 times the stars the top Python static site generator
has in that list is not surprising.

------
lukeholder
Wow, big list, I have tried a whole bunch of those but my favourite by far is
Hugo using Go.

[https://github.com/spf13/hugo](https://github.com/spf13/hugo)

I don't know why but using a single binary is awesome!

~~~
im_dario
Yes, single binary is a great feature. All Go-based static generators share
this feature (and they are pretty fast).

------
wtracy
Hey, mine isn't in the list! :-)

[https://github.com/wtracy/hablog](https://github.com/wtracy/hablog)

That said, it was only ever intended as a toy project, so it probably doesn't
belong here.

~~~
kephra
My "Make Here CMS" is also not on the list:

[http://kephra.de/blog/Make_here_CMS.html](http://kephra.de/blog/Make_here_CMS.html)
[http://kephra.de/src/Make-here-CMS-shar.txt](http://kephra.de/src/Make-here-
CMS-shar.txt)

The idea is, that a minimal static site generator can be done by a recursive
Makefile and a here script.

------
gadders
No City Desk from Fog Creek?[1] :-)

[https://shop.fogcreek.com/default.asp?sCategory=CITYDESKINDE...](https://shop.fogcreek.com/default.asp?sCategory=CITYDESKINDEX)

~~~
gadders
I'm being semi-facetious, but when it first started out it did all this stuff
and deployed it to your website as well via FTP.

------
xrd
If you are interested in a site which creates a Jekyll blog, and installs it
on GitHub for you, and has an Android app that acts as the correlate to the
Wordpress app (and is open source) then check out
[http://teddyhyde.com](http://teddyhyde.com).
[http://blog.teddyhyde.com](http://blog.teddyhyde.com) documents how to modify
the Android app if you want to help hack it.

------
im_dario
(Shameless plug) I maintain Zas, a Go static generator. I checked the other
projects in Go and I must say it's funny to see how different are our
approaches to the very same thing :)

The only big difference that makes Zas stand out is its more Unix-like spirit
in how it handles extension through commands as plugins.

I'll check the list in the future and try to adquire some more "skills" for
Zas.

------
joshcrews
I'm a Ruby developer and interested in creating a business in this space.

Specifically a online-CMS that generates static html uploaded to a CDN. The
target market is businesses who need to know their content is "uncrashable"
and "infinitely scalable". The price point would be >$100/mo.

Get in touch with me if you are interested in that idea.

~~~
ixmatus
That sounds like a feature not a product.

~~~
ixmatus
Lol at the downvoters. I'm sure you can build a lifestyle business around a
CMS that spits out a static site but honestly, unless your audience is Hacker
News, people don't care whether it's static or dynamic and often times they'll
ask for that one thing that _isn 't static_ and breaks your ability to sell to
them.

So yes, this is a feature and not a product as evinced by the numerous plugins
and projects that take existing dynamic web application software and can
produce static sites (Flask Freeze, Drupal's plugin, I think even WordPress
has one).

[EDIT] Which means, what's to stop the existing "site builder" companies from
doing the same? They don't sell the feature (static builder from a dynamic
site), they sell the product (build yourself a site), and people buy it. The
"background benefit" is a slightly faster site and who does that really matter
to? Not the customer. The service - reduction of bandwidth and server
resources; the could easily introduce the feature, cut resources, and keep the
margin.

------
imakesnowflakes
Here is something I made in php,

[http://imakesnowflakes.com/vodka-
introduction.html](http://imakesnowflakes.com/vodka-introduction.html)

I made it because I found the existing ones unnecessarily complicated, for
doing something trivial as converting a bunch of markdown files into html.

------
codezero
This is slightly off-topic, but are there any rich-text web editors that
output to Markdown?

I rarely need the full featureset of Markdown and would prefer a simple editor
that gets me half way there, while still ultimately outputting Markdown for
storage/use in something like a static site generator.

~~~
wlesieutre
[http://md-wysiwyg.sourceforge.net/](http://md-wysiwyg.sourceforge.net/) might
fit your needs? There's a link to a demo page under the second header.

It's a bit primitive, but I guess that's the point. Be sure to hit the "Return
markdown text" checkbox.

~~~
rhythmvs
The options for wysiwyg Markdown editing are few; they’re listed here.¹ Rich
text editing for Markdown, still is an unsolved problem.²

¹ [https://github.com/rhythmus/markdown-
resources/blob/master/m...](https://github.com/rhythmus/markdown-
resources/blob/master/markdown-tools.md#md--html-browser-based-wysiwyg-
markdown-editor)

²
[https://github.com/quilljs/quill/issues/74#issuecomment-4294...](https://github.com/quilljs/quill/issues/74#issuecomment-42942223)

------
Fizzadar
Quickly scanned through - pretty sure jinja is a templating engine, not a
static site generator...

~~~
jaspervdj
You're right, thanks!

    
    
        https://github.com/jaspervdj/static-site-generator-comparison/commit/610b1b35742a281a84bfb18cf026842d1b92bf67

~~~
marijn
Also, the link to Heckle is dead. Did you mean my Heckle?
[https://github.com/marijnh/heckle](https://github.com/marijnh/heckle)

~~~
jaspervdj
Not sure, I assume so. I think it was part of a bunch of SSGs imported from
another listing.

    
    
        https://github.com/jaspervdj/static-site-generator-comparison/commit/96f23ed30db97067feb42b2f9100ec48c2596eb6

------
jacquesm
I've been using Octopress for a while now. It's super nice except for one
major gripe which is that as the number of posts grows it slows down to a
crawl. Other than that I'm totally happy, but a 5 minute wait to fix a typo
gets old quickly.

------
codecondo
I wrote a post on some of these a little while ago,

[http://codecondo.com/7-static-site-generators-for-
building-w...](http://codecondo.com/7-static-site-generators-for-building-
websites-blogs/)

only featured stuff that the majority of developers use.

------
ezequiel-garzon
I've been wondering, with so many static site generators, isn't there one
geared toward the "brochureware" market? I'm thinking of something that is
very easy to use and maybe imposes rigid assumptions for non-technical people.

~~~
mercer
Could you share more details as to what kind of assumptions you'd expect?

I suppose it wouldn't be to hard to use any of the existing static site
generators and either 'repackage' them with specific assumptions, or write a
module that implements them...

------
bpizzi
Oh my, thanks for remembering me that I've started a static site generator 3
years ago and never finished it
([https://github.com/bpizzi/Hydrastic](https://github.com/bpizzi/Hydrastic)).

------
colmmacc
Your browser as the static site generator;
[http://composedit.net/](http://composedit.net/) \- for when even running the
static site generator itself is too much effort!

~~~
Sprint
This creates empty pages to be filled with Javascript.

------
tracker1
google cache...

[http://webcache.googleusercontent.com/search?q=cache:fOkco3V...](http://webcache.googleusercontent.com/search?q=cache:fOkco3VsTvgJ:staticsitegenerators.net/)

------
jannes
I use _gulp_ with _gulp-nunjucks-render_ as my static-site generator. It
offers the most flexibility to me and in the end any static-site generator is
just rendering templates.

------
tsifei
Check out Pikock: [http://www.pikock.com/](http://www.pikock.com/)

It's a static site generator all made with Ruby on Rails and AngularJS for the
front.

------
ChrisArchitect
another one of these resource lists sites eh (do we have a general
list/information curating problem?) Normally I would be in this posting
[http://modernstatic.com/](http://modernstatic.com/) as a long standing index
of static generators but hm..seems to have been neglected/let expire..and I
can't remember who created it.

[http://staticgen.com](http://staticgen.com) is a decent alternative

------
jon_kuperman
Awesome list! I've been using jekyll for about 2 years and I really like it.
It's crazy that Jekyll is number 1 and 2 considering Octopress runs on it.

------
loup-vaillant
It lists my generator! Yay!

(Note: I use Ultra Simple Site Maker for my own website, but I wouldn't
recommend you do at the moment. It's not very flexible right now.)

------
ronbeltran
It would be more useful if we can filter the list by Stars, License, Language,
Created, Updated.

~~~
gdw2
Click on the headings?

~~~
raving-richard
Enable JavaScript, and _then_ click on the headings I think you mean.

------
pessimizer
sitedown:
[http://webcache.googleusercontent.com/search?q=cache:http%3A...](http://webcache.googleusercontent.com/search?q=cache:http%3A%2F%2Fstaticsitegenerators.net%2F)

------
robobro
+1 for Blosxom.

Does anyone else use it?

------
t3ra
Isnt PICO (picocms.org) a good fit for this list ?

------
antonwinter
got my sideproject for you list www.landinggear.me

------
Navarajan
This one is missing "[https://sites.zoho.com/"](https://sites.zoho.com/")

