You shouldn’t be spending too much time on building simple, static websites and blogs, especially if you’re a developer who needs to publish frequent updates, you crave the ability to save time.
I’m not sure when exactly the first static site generators started to appear, but I know it’s not a really long time, as back in 2006 – I couldn’t even dream of being able to generate a website from a .txt file, instantly. Not to mention, have that website look good and appealing.
While the majority of the world depends on CMS platforms like WordPress, there is an ever growing market of those designers and developers who simply need a website, or a blog, that works and doesn’t require more than 128MB of ram to run. The average WordPress installation these days requires a minimum of 1GB ram, to be efficient, fast and reliable.
The downside? Well, there aren’t really that many downsides to having a static website, for one – you’re learning how to use markdown, you’re learning how to deploy a static website, and most of all – you’re learning how to work with other content systems, some of which are used by big outlets and companies you already know of.
Pros of a Static Website
- Secure Filesystem
- True Simplicity
- Website Speed
- Easy to Scale
Cons of a Static Website
The biggest cons are probably the need to implement 3rd party services for things like dynamic content, or comments. Beyond that, it’s very hard to see why you shouldn’t be using a static website. Is the admin dashboard really all that important, when you could focus much more on the content instead?
7 Static Site Generators for Building Websites & Blogs
I’m going to take a look at the seven most popular static website generators that you can begin using right now, they’re all frequently updated, have great communities behind them – and as I just mentioned above, some of the top websites in the world use them, so there’s definitely some sort of value.
Jekyll, very simple and user friendly static website / blog generator, has been downloaded nearly 700,000 times and is powered by the ever lovely Ruby. Yes, it does mean you’ll need to learn how to install Ruby gems, but that’s barely an issue.
Why? If you’re a DigitalOcean customer, you’ll know that they’ve got a really nice tutorial section – see some of the WordPress tutorials here – which is full of guides and walk-throughs for getting started with Ruby. Best of all, those tutorials are universal, and will work with any other hosting provider.
Just to give you a glimpse of the power of Jekyll, the official GitHub Pages are powered by this platform, and every single one of the GitHub’s pages that developers have built and designed are powered by Jekyll. As you know, GitHub is one of the biggest programming websites in the world, so I guess it does account for something, and gives Jekyll the right credibility.
- Code Highlighting: You’ll be using Pygments’s syntax highlighter to highlight all of your awesome code with the pages you build with Jekyll.
- Blog Structure: It’s automatically organized / paginated by the recent posts, so it’s pretty much a static blog. You can template this, but it does make it easier to host a static blog.
- Blog Import: You can easily import content from other blogs, within a couple of clicks. The major ones supported are WordPress, Drupal, Tumblr and even formats like RSS / CSV, full list available in the documentation.
- Built-In Server: Jekyll will allow you to start your own static server from it’s own source code.
- HTML & Markdown: You can template your websites look with HTML, and use Markdown to style your content. It’s an incredibly easy combination, and makes content building fun again!
I’m having a hard time putting this in perspective, probably because it’s so simple. Octopress will take away all the difficulties of having to generate your own HTML / Markup that Jekyll might present. It’s a web framework specifically designed for Jekyll, to make building sites even more easy, by implementing the use of script generators.
While Jekyll is great, Octopress gives us more flexibility, and it’s worth noting that it’s not a library, but a repository, which makes code styling that much easier for those who want to ‘play around’. It’s incredibly easy to fine tune the code to your own needs, almost like working with a .txt file – full of text that needs sorting to be readable.
Although the Jekyll documentation is good, Octopress’ sample configuration files are really much easier to comprehend than by referencing the Jekyll wiki. So, it was clear that Octopress would make it much easier to manage your Jekyll website, not harder. […]
- Issues: Whilst there are many advantages, there are also some disadvantages, and instead of writing them all down, it’s worth keeping an eye on the GitHub issue tracker for Octopress, as it features ‘some’ issues that users are experiencing.
- Beginner / User Friendly: It’s extremely easy to use, as discussed above.
- Plugins: You can use both Jekyll plugins, and those that have been built specifically for Octopress, as well as those from third party developers.
Now, if you really need some further inspiration, and want real-life examples, take a look at the official list of sites using Octopress, it will certainly give you a better perspective on what can be done with this blog / site generator platform.
Empower your website frontends with layouts, meta-data, pre-processors (markdown, jade, coffeescript, etc.), partials, skeletons, file watching, querying, and an amazing plugin system. Use it either standalone, as a build script, or even as a module in a bigger system. Either way, DocPad will streamline your web development process allowing you to craft full-featured websites quicker than ever before. […]
It’s built on Node.js, and is totally awesome! It comes integrated with an administrator dashboard, to make publishing easier and more timely, without taking away all of the simplicity from front-end development. I recommend checking out my web application frameworks for Node.js post to learn more about what’s possible to build using Node.js!
I just want to say that DocPad also takes away all of the ‘mega-simplicity’ that the first two static site generators presented, and instead provides a much more sophisticated experience, with features like internal plugin features that allow to extend the functionality of this framework – drastically.
For getting started, I recommend the following YouTube video series, which will walk you through the process of learning about DocPad, and also building a simple blog with it.
DocPad Video Tutorials
- What is DocPad?
- Installing DocPad
- Updating DocPad
- Installing Plugins
- Making a Simple Blog
- Templating Engines
- Easy Templating: Integrated templating engines like Moustache and HAML (+ many others) make it extremely easy to build new styles, and transform your blog into your own personal style.
- Live Updates: Has a built in plugin that will automatically reload the blogs / sites built with DocPad for the users viewing the site. Great for real-time updates!
- Express for Dynamic Content: You can take advantage of the Express framework to extend the functionality of your blog with dynamic content.
- Helpers: Has an incredibly large support system, also called as ‘Helpers’ that integrate many new functions and features within your blog. See them here.
It’s definitely worth looking more into DocPad, quite a few people are using this static site (blog) generator already, and the feedback is really nice. You’ll find that it’s also easy to setup, if you follow the video tutorials I linked above, they might be lengthy – but you only have to watch them once.
Open-source static site publishing tool. Supports Markdown and reST-formatted content. Powered by Python.
It’s possibly one of the simplest ones on the list, and there isn’t a whole lot to discuss about it, not even terms of features, as everything is printed out on the homepage of this static site generator.
I recommend heading over to Javier’s site, and reading his rad tutorial on how to get started with Pelican. I promise, it’s quick and easy.
Building static sites shouldn’t be looked at as something that people did back in 1995, you should think of static websites and blogs as an huge advancement in technology. It’s funny to watch the trend go from huge content management systems, back to small sites – hosted on servers with 200MBish ram, letting traffic the size of HN news front-page to pass through.
Middleman is a ruby gem, just like Jekyll is, and so you’ll need to know / learn how to deploy. Head back to the top to see the links I provided to make it happen. Middleman itself covers quite a bit – SAAS, LESS, HTML5 templates and much more. It even has a sophisticated template directory to browse from.
Chris Bell – a Ruby fanatic, has built / written a tutorial on how to get started with Middleman, and how to build your first blog / website. He’s going in-depth about some of the styling options, and it’s far better than anything I could produce. See the tutorial here.
Flexible, minimalistic, multi-platform static site generator built on top of node.js. The really great thing about Wintersmith is the ease of developing / launching a new site, it can be literally done with a single command line command.
wintersmith new [site-name]
You’ll get a default installation containing all of the necessary config files, templating files and much more, the whole ecosystem to put in perspective. It’s also very plugin friendly. But, I think the biggest feature to mention here is that it’s not built just for static websites or blogs, it seems to stretch much further than that!
Whether you’re new to Wintersmith, or have built sites with it before, it’s worth taking a look at David Tucker’s two-part series on how Wintersmith works, and how easy it is to deploy new websites with it.
It’s another one that’s written in Ruby, I can almost see a trend forming here, but gladly – this is the last static site generator we’re going to add to our list, before wrapping it up. I think it was easy to notice how the list started to shrink by the end of it.
nanoc is a tool for building static web sites. It can transform content from one format (e.g. Haml or Markdown) into another (usually HTML) and lay out pages so that the site’s look and feel is consistent across all pages.
You’ll find that nanoc is great for building both personal and magazine blogs, photography galleries for photographers, and even portfolio websites for agencies and corporate companies.
It’s flexible, makes it easy to integrate with other Ruby frameworks and platforms, allows the implementation of plugins and is not very hard to style. If you’re looking for a static site generator that enables the ability to build in multiple languages, nanoc might be your best choice. You can learn more why at their multilingual section.
Which are The Best Static Site Generators You Know?
I think it doesn’t really matter, whether you’re focusing on hosting a huge website, or a simple portfolio, static websites can be extremely useful when it comes to saving money, time and resources. I’m certain there are enormous amounts of reports on how people find static websites far better, than a full-scale content management system, some of these even offer dynamic content integration – so it’s not that big of a deal.
Building a static site through these generators can mean only one thing, you’re after simplicity and want to put the emphasis on the content, which is what you should be doing. I’m in the process of building my first static website for one of my projects, and I can’t wait to experiment, hopefully even build a report in the future.
So, my question is this – which of these services are you using and what has been your own experience with building a static website, application or a blog? What can you recommend to those who might need help with taking their first steps?
cover photo by sap