# node-taters **Repository Path**: mirrors_defunctzombie/node-taters ## Basic Information - **Project Name**: node-taters - **Description**: super hash powers for express view rendering - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-09-24 - **Last Updated**: 2026-02-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # taters [](https://travis-ci.org/defunctzombie/node-taters) taters is an automatic resource hashing middleware for [express](http://expressjs.com/). Injects resource fingerprints into static resource urls. Optionally inject a prefix for CDN deployments. ### before ```html
``` ### after ```html ``` And taters will add the appropriate cache expiry headers. ## quickstart ```javascript var express = require('express'); var taters = require('taters'); var app = express(); app.set('view engine', 'hbs'); // or jade or whatevs app.set('views', __dirname + '/views'); // taters will setup itself on the app taters(app); // you can now serve static content with the regular static middleware // no need to set a longer cachetime or anything since taters does that for us app.use(express.static(__dirname + '/public')); // render your views as before // tater will replace script, link, img urls with fingerprinted ones app.get('/', function(req, res, next) { res.render('index'); }); ``` ## api ### taters(app, opt) Taters accepts some options to configure behavior | option | type | default | description | | ---- | ---- | ---- | ---- | | cache | Boolean | false | `true` will cache url hashes to be cached | | prefix | String | | prefix all changed url with this path | | middleware| Function | | optional function called wieh /static/ middleware is encountered | | exclude | Array | [] | Do not hash a url that contains `string` or if `regex` returns true ## Middleware `middleware` is an optional function which will be called when /static/ middleware is encountered. You can do things like set longer expiries, better cache headers, etc... By default, taters middleware sets an expiry of 1 year. This lets browsers, proxies, and CDNs cache the resource for a long time since the hash changes when the resource changes. ## Detecting Taters Requests You can detect incoming taters requests by checking if `req.internalTatersRequest` is true. This is helpful to bypass authentication and tweak logging. ## CDN Taters makes it very easy to use a CDN in production. Simply set the `prefix` option to the domain of your CDN and your resources will be served via CDN.