0.5.8 • Published 4 years ago

@financial-times/dotcom-server-resource-hints v0.5.8

Weekly downloads
1
License
MIT
Repository
-
Last release
4 years ago

@financial-times/dotcom-server-resource-hints

This package provides functions to help applications track and send resource hints for the assets they use. Resource hints enable developers to optimise the delivery of certain resources.

Getting started

This package is compatible with Node 8+ and is distributed on npm.

npm install -S @financial-times/dotcom-server-resource-hints

This package provides a single class which can be configured using options.

import { ResourceHints } from '@financial-times/dotcom-server-resource-hints'
const resourceHints = new ResourceHints()

The resource hints instance provides methods to maintain a list of assets used for the lifecycle of a request and then format this list into a string suitable for use as a Link header:

resourceHints.add('styles.css')
resourceHints.add('scripts.js')

resourceHints.toString() // <styles.css>; as="style"; rel="preload"; nopush, <scripts.js>; as="script"; rel="preload"; nopush

Below is an example demonstrating how this package may be used within an Express application to track any assets used during the lifecycle of a request and send a Link header along with the response:

import { ResourceHints } from '@financial-times/dotcom-server-resource-hints'

app.use('/', (request, response) => {
  const resourceHints = new ResourceHints()

  resourceHints.add('styles.css')
  resourceHints.add('scripts.js')

  response.set('Link', resourceHints.toString())

  response.send('<p>My awesome page</p>')
})

API

add(file: string)

Add a file (either a complete URL or a path) to the list of resources to create hints for.

toString()

Returns a formatted string of resource hints for use as a Link HTTP header.

Options

The ResourceHints class accepts the following parameters. All parameters are optional:

There are currently no options for this middleware package.

0.5.8

4 years ago

0.5.7

4 years ago

0.5.6

4 years ago

0.5.5

4 years ago

0.4.5

4 years ago

0.5.4

4 years ago

0.4.4

4 years ago

0.5.3

4 years ago

0.5.2

4 years ago

0.4.3

4 years ago

0.4.2

4 years ago

0.5.1

4 years ago

0.5.0

4 years ago

0.5.0-beta.3

4 years ago

0.5.0-beta.1

4 years ago

0.5.0-beta.2

4 years ago

0.4.1

4 years ago

0.3.5

5 years ago

0.3.4

5 years ago

0.3.3

5 years ago

0.3.2

5 years ago

0.3.1

5 years ago

0.3.0

5 years ago

0.2.3

5 years ago

0.2.2

5 years ago

0.2.1

5 years ago

0.2.0

5 years ago

0.1.4

5 years ago

0.1.3

5 years ago

0.1.2

5 years ago

0.1.1

5 years ago

0.1.0

5 years ago

0.0.4

5 years ago

0.0.3

5 years ago

0.0.2

5 years ago

0.0.1

5 years ago

0.0.1-test.2

5 years ago

0.0.1-test.1

5 years ago