1. gulp-mustache
A plugin for Gulp that renders mustache templates into html
gulp-mustache
Package: gulp-mustache
Created by: rogeriopvl
Last modified: Sun, 14 May 2023 02:56:05 GMT
Version: 5.0.0
Downloads: 23,848
Repository: https://github.com/rogeriopvl/gulp-mustache

Install

npm install gulp-mustache
yarn add gulp-mustache

gulp-mustache NPM version Build Status Dependency Status

mustache plugin for gulp

Usage

First, install gulp-mustache as a development dependency:

 npm install --save-dev gulp-mustache

Then, add it to your gulpfile.js:

 var mustache = require("gulp-mustache");

gulp.src("./templates/*.mustache")
	.pipe(mustache({
		msg: "Hello Gulp!"
	}))
	.pipe(gulp.dest("./dist"));

You may also pass in an object representing mustache partials and their contents
as a third argument to the call to mustache() like so:

With key/value pairs:

 gulp.src("./templates/*.mustache")
	.pipe(mustache({
		msg: "Hello Gulp!",
		nested_value: "I am nested.",
		another_value: "1 2 3"
	},{},{
		some_inner_partial: "<p>{{nested_value}}</p>",
		another_partial: "<div>{{another_value}}</div>"
	})).pipe(gulp.dest("./dist"));

With a json file:

 gulp.src("./templates/*.mustache")
	.pipe(mustache('your_json_file.json',{},{}))
	.pipe(gulp.dest("./dist"));

Partials loaded from disk

Mustache partials not given in the partials argument will be loaded from disk, relative from the file currently being processed:

{{> ../partials/head }}

This will find a head.mustache in the partials directory next to the current file's directory. Partials loading is recursive.

API

mustache(view, options, partials)

view

Type: hash or string
Default: undefined

The view object, containing all template variables as keys. If you pass a string it will be used as the path to a JSON file containing view variables.

As of v1.0.1, file.data is supported as a way of passing data into mustache. See this.

options

Type: hash
Default: { }

The options object to configure the plugin.

options.extension

Type: string
Default: the extension of the current file

options.tags

Type Array
Default undefined

Pass custom mustache delimiters. This must be an Array of strings where the first item is the opening tag and the second the closing tag.

Example:

 ['{{custom', 'custom}}']

partials

Type: hash
Default: { }

An optional object of mustache partial strings. See mustache.js for details on partials in mustache.

License

MIT License

RELATED POST

10 Must-Know Windows Shortcuts That Will Save You Time

10 Must-Know Windows Shortcuts That Will Save You Time

Arrays vs Linked Lists: Which is Better for Memory Management in Data Structures?

Arrays vs Linked Lists: Which is Better for Memory Management in Data Structures?

Navigating AWS Networking: Essential Hacks for Smooth Operation

Navigating AWS Networking: Essential Hacks for Smooth Operation

Achieving Stunning Visuals with Unity's Global Illumination

Achieving Stunning Visuals with Unity's Global Illumination

Nim's Hidden Gems: Lesser-known Features for Writing Efficient Code

Nim's Hidden Gems: Lesser-known Features for Writing Efficient Code