|Original author(s)||Denis Defreyne|
4.7.12 / June 23, 2017
Nanoc is a Ruby-based website compiler that generates static HTML. It supports compiling from various markup languages, including Markdown, Textile, and Haml. It can generate and lay out pages with a consistent look and feel. Nanoc is not a content management system, however it acts somewhat like one.
Advantages of Nanoc
Nanoc has several advantages over other systems:
- Modular architecture
- Generation of static pages
- Versionable source files
Differences from traditional content management systems
Although Nanoc sometimes acts as a content management system (CMS), there are many differences.
- Traditional CMSs must assemble the webpage every time a user requests it. Static HTML pages are pre-assembled and as such do not have to be re-assembled.
- CMSs run using a server-side language, which exposes the CMS to all the vulnerabilities of the language. Since Nanoc compiles websites to static HTML, the only vulnerabilities are that of the web server itself.
- The content managed by a CMS can usually be changed at any time through a web interface. Since Nanoc must recompile the website at every change, it is more difficult to modify a website.