Skip to content
a simple HTML index through stream
JavaScript
Branch: master
Clone or download

Latest commit

Latest commit 5f2299f Aug 25, 2016

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore
.npmignore
LICENSE.md
README.md
index.js
package.json
test.js

README.md

simple-html-index

stable

A tiny through stream that returns a bare-bones HTML5 template with an optional <link> and <title> in the head and <script> entry-point in the body.

Example

In html.js

var html = require('simple-html-index')

html({ title: 'hello', entry: 'bundle.js' })
  .pipe(process.stdout)

Now run node html.js > index.html and you would end up with a file that looks like this: (after formatting)

<!DOCTYPE html>
<html lang="en">
<head>
  <title>hello</title>
  <meta charset="utf-8">
</head>
<body>
  <script src="bundle.js"></script>
</body>
</html>

Usage

NPM

stream = html([opt])

Returns a read stream that writes a bare-bones HTML template, with the following optional features:

  • title whether to include a <title> element
  • entry if specified, will add a <script src={{entry}}> element
  • css if specified will add a <link rel="stylesheet" href={{css}}> element
  • favicon if true the favicon.ico request will be suppressed
  • lang the value of the lang attribute in the root <html> element, default 'en'
  • base if specified will add a <base href={{base}}> element

Additional properties

Combine simple-html-index with hyperstream to add additional properties to html. An example how to add an extra <script> tag to the body tag:

const hyperstream = require('hyperstream')
const html = require('simple-html-index')

const htmls = html({ entry: 'static/bundle.js' })
const hs = hyperstream({
  body: { _appendHtml: "<script>console.log('extra tags!')</script>" }
})

htmls.pipe(hs).pipe(process.stdout)

License

MIT, see LICENSE.md for details.

You can’t perform that action at this time.