@financial-times/dotcom-server-resource-hints
TypeScript icon, indicating that this package has built-in type declarations

0.5.8 • Public • Published

@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.

Readme

Keywords

none

Package Sidebar

Install

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

Weekly Downloads

2

Version

0.5.8

License

MIT

Unpacked Size

7.79 kB

Total Files

10

Last publish

Collaborators

  • robgodfrey
  • robertboulton
  • seraph2000
  • hamza.samih
  • notlee
  • emmalewis
  • aendra
  • the-ft
  • rowanmanning
  • chee
  • alexwilson