@commonshost/manifest
HTTP/2 Server Push Manifest is a declarative configuration syntax for web servers, CDNs, and tools that offers web developers access to this powerful new protocol feature.
[
{
get: '/index.html',
push: '**/*.{js,css}'
}
]
Documentation
Supported Platforms
A manifest is an intermediary format which can be transpiled to the configuration syntax of CDN services or web servers.
CDN services: Commons Host, Cloudflare, Fastly, Netlify
Web servers: Apache, H2O, NGINX
Languages: Node.js/NPM
Note: Web browsers widely support HTTP/2 Server Push. The manifest is only needed on the server side.
Table of Contents
- API
- CLI
- FAQ
- What problem does this solve?
- Why declarative rules?
- Which software supports HTTP/2 Manifests?
- Aren't CDNs and web servers using preload link headers?
- Can I still programmatically push assets?
- Does this work with a CDN?
- What about browser support?
- Which files can be pushed?
- Should this be an RFC?
- Why JSON?
- Why publish this as a spec?
- Is JavaScript required?
- Can I use HTTP/2 Server Push with CORS assets?
- Are there security considerations?
- What about caching?
- What about HTTP methods, status codes, etc?
- Will the server push too much stuff?
- What if the browser already has some assets in its cache?
- What about auto-push?
- What about stream dependencies and priorities?
- I thought HTTP/2 priority was a client-only feature?
- I (do/don't) like this