Hugo - Fast framework for building websites

Hugo is a static site generator that builds a site quickly and has plenty of features for managing blogs and regular sites.


As a static site generator, Hugo generates the static files (HTML, CSS, etc.) of a website starting from properly arranged source files. The generator is said "static" since all the files are built on the local computer and then uploaded ("published") to the web server. Therefore, there is no content that is generated dynamically by server-side code. As a result, web sites generated by Hugo do not use any database.

This arrangement makes the sites extremely fast to load, and secure. On the other hand, the sites are not suitable for receiving data from the visitors and store it in the server.

The layout of the website generally follows the structure of the "content" directory, while the actual content of the web pages is derived from source files in Markdown format.

Pages can be associated to tags and categories, can have descriptions and publication dates; they can be drafted before being published.

Hugo takes care of generating the necessary files that, once uploaded on a server, constitute a website made by static content.

Several themes are freely available. Moreover, Hugo provides a language to customize the content of the generated pages.

An internal web server can be started during the development of the website to locally browse the content before releasing it on a public web server.

Other static site generators

There are hundreds of static site generators, all of them - at the best of my knowledge - implemented as terminal CLI programs. For this reason, I will probably not cover them all in CLIpedia. I dedicated this post to Hugo since it is one of the most widely used programs, and it is also the one used for managing CLIpedia. I do not exclude to write a post to some other popular ones in the future.

However, to have a comprehensive list of static site generators, a detailed list is reported in staticsitegenerators.net.


References