Minimalist static site generator, powered by Node.js
- Generate HTML pages from EJS and/or Markdown files.
- The site can have a global layout (the common header, navigation, footer) and some pages may have a specific one.
- It can read site metadata from a global file and have specific data for individual pages.
- Allow partials (blocks of reusable interface components)
- Node.js installed (version 8 or above)
You may install it globally with:
npm i -g nanogen
Or run the cli directly with npx (available with npm 5.2 or above):
npx nanogen <command>
Creating a new site
To create a brand new site, navigate to the folder you want your site to be and run:
This will create a initial site structure like this:
/ src/ assets/ layouts/ pages/ partials/ site.config.js
To build the site and open it in a browser, run:
There is already a default layout inside the
layouts folder, but you may add more.
Read more about Layouts.
pages folder is where you put ejs, md or html files that will generate the pages of the final site. Any file name and folder structure used here will be transposed to the resulting site (without the
Read more about Pages.
Available commands and options
You may run
nanogen -h to see the available commands and options:
Initialize a new site: $ nanogen init Start the current site: $ nanogen start [options] Build the current site: $ nanogen build [options] Options -c, --config <file-path> Path to the config file (default: site.config.js) -p, --port <port-number> Port to use for local server (default: 3000) -h, --help Display this help text -v, --version Display Nanogen version
Read the full documentation