node package manager
Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »



npm tests coverage dependencies

Procuring static files since 1802.

Note: This project is in early development, and versioning is a little different. Read this for more details.

Why should you care?

So there are already a number of pieces of middleware intended for serving static files. The difference with alchemist is that this one is intended only for serving static files. The main difference is that when a file is not found, it throws an error rather than just passing the request on. This is because when you are serving a static site, a 404 is not recoverable, other than by an error page.

This module is a light wrapper over send, that has static-style error handling.


npm install alchemist-middleware


Alchemist's API was designed to be quite straightforward to use. Here's a quick example:

var http = require('http'),
    connect = require('connect'),
    alchemist = require('alchemist-middleware');
var app = connect().use(alchemist('public'));

There are a few options you can use to configure alchemist's behavior. An example is shown below with all the options filled out as their default values:

alchemist('public', {
  etag: true,          // toggle etag generation 
  hidden: false,       // toggle serving of hidden/dotfiles 
  index: 'index.html', // directory index filename, string or false 
  maxage: 0            // max age in ms for http cacheing 

License & Contributing