Coder Social home page Coder Social logo

node-helmet's Introduction

node-helmet Build Status Codecov

Construct your html for server side rendering without pain.

Installation

npm install node-helmet

Usage

const { helmet, meta } = require('node-helmet')

const html = helmet()
  .lang('en_US')
  .class('mac')
  .head(
    meta.charset('utf-8'),
    meta.referrer('origin'),
    meta.httpEquiv('X-UA-Compatible', 'IE=edge'),
    meta('google', { value: 'notranslate' }),
    meta('custom-meta-name', 'content-of-meta'),
  )
  .title('Name of your page')
  .link('icon', '/favicon/svg/32.svg', { type: 'image/svg' })
  .stylesheet('/assets/bundle.css')
  .stylesheet('//mycdn.com/static/resolved/foo-bar.css')
  .script('/assets/bundle.js')
  .inlineScript(myFunc.toString(), { nonce: key }, ['arg1', 'arg2'])

console.log(html.toString()) // or console.log(`${html}`)

Result document (formatted):

<html lang="en_US" class="mac">
  <head>
    <meta charset="utf-8" />
    <meta name="referrer" content="origin" />
    <meta content="IE=edge" />
    <meta name="google" value="notranslate" />
    <meta name="custom-meta-name" content="content-of-meta" />
    <title>Name of your page</title>
    <link rel="icon" href="/favicon/svg/32.svg" type="image/svg" />
    <link rel="stylesheet" href="/assets/bundle.css" />
    <link rel="stylesheet" href="//mycdn.com/static/resolved/foo-bar.css" />
  </head>
  <body>
    <script type="application/javascript" src="/assets/bundle.js"></script>
    <script type="application/javascript" charset="utf-8" nonce="2aae6c35c94fcfb415dbe95f408b9ce91ee846ed">
      (function myFunc(a, b) {
        console.log('ok', a + b);
      })(arg1, arg2)
    </script>
  </body>
</html>

node-helmet's People

Contributors

fresk-nc avatar sergeysova avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.