Plug-and-play binary wrapper for Hugo Extended, the awesomest static-site generator.
npm install hugo-extended --save-dev # or... yarn add hugo-extended --dev
hugo-extended
defaults to the extended version of Hugo on supported platforms, and automatically falls back to vanilla Hugo if unsupported (mainly on 32-bit systems).
This package‘s version numbers align with Hugo’s — hugo-extended@0.64.1
installs Hugo v0.64.1, for example.
The following examples simply refer to downloading and executing Hugo as a Node dependency. See the official Hugo docs for guidance on actual Hugo usage.
package.json
:If you‘ll be using the SCSS features of Hugo Extended, it’s probably smart to install postcss
, postcss-cli
, and autoprefixer
as devDependencies too, since they can be called via built-in Hugo pipes.
The build:preview
script below is designed for Netlify deploy previews, where $DEPLOY_PRIME_URL
is substituted for the base URL (usually ending in netlify.app) of each commit or pull request.
{ // ... "scripts": { "build": "hugo", "build:preview": "hugo --baseURL \"${DEPLOY_PRIME_URL:-/}\" --buildDrafts --buildFuture", "start": "hugo server" }, "devDependencies": { "autoprefixer": "^10.2.5", "hugo-extended": "^0.83.1", "postcss": "^8.2.9", "postcss-cli": "^8.3.1" } // ... }
$ npm run start Building sites … | EN -------------------+------ Pages | 50 Paginator pages | 0 Non-page files | 138 Static files | 39 Processed images | 63 Aliases | 0 Sitemaps | 1 Cleaned | 0 Built in 2361 ms Serving pages from memory Web Server is available at http://localhost:1313/ (bind address 127.0.0.1)
const { execFile } = require('child_process'); const hugo = require('hugo-extended'); execFile(hugo, ['version'], (error, stdout) => { if (error) { throw error; } console.log(stdout); });
Forked from fenneclab/hugo-bin under the MIT License, (c) Shun Sato.
Hugo is distributed under the Apache License 2.0.