Static Site Generators
Static Site Generators are tools for building static websites. They take HTML & CSS templates and raw content like the text of a blog post and covert them into a complete webpage ready to be deployed.
tag while writing their content. Writing lots of content in HTML is painful. To address this, Content Management Systems (CMS)’s like wordpress are extremely popular as they allow you to write your posts directly into an editor and publish them as a webpage. They allow even nontechnical people to publish to the web, which is why a quarter of all websites are made with one.
However, Content Management Systems have their own sets of disadvantages. Wordpress stores your posts in a database, which means you need to have a running server to host the site. These moving parts make managing your site more difficult, as you have to worry about annoying things like updating the wordpress runtime to address security vulnerabilities.
Static websites, or sites that are made of just static files and no database, are much easier to maintain and scale because they can simply be uploaded to a static host or CDN with FTP, or directly hosted with something like github pages.
SSG’s fill the niche between the two. You can build your own page with HTML and CSS, and then write your content in a simpler markup language like markdown. Then, you run the SSG to convert your text and code into a finished static site ready to be deployed. As a developer, they are probably the best option for building your own content-based site, like a personal blog.
Since static sites are so much simpler to maintain than sites with a complex backend runtime and database, static sites and thus SSGs are rising in popularity even for complex web apps. See JAM Stack.
For a more in-depth treatment of this topic, check out Smashing Magazine’s Why Static Site Generators Are The Next Big Thing.
Scotch.io also has a nice tutorial for building a static site with Jekyll.