Static middleware for breezily deploying static content in Diet.js
Why choose diet-ecstatic?
- diet-static is currently broken due to the mime 2.0 update
- friendly page URLs thanks to autoindexing and default .html extension
- caches small files in memory for maximum efficiency
- name is a cute pun
Create the middleware by passing an options object to
const server =const ecstatic =const app =appapp
The only required option is
path which specifies which directory to serve files from.
Constructs a table of all files in supplied
path directory and watches the directory for changes. The middleware
will serve any requested file that matches a path found in the table. Note that '/static' will not necessarily be
part of the requested file path, rather, it will be relative to the root of your application.
localhost:7777/favicon.ico --> /path/to/app/static/favicon.ico localhost:7777/assets/script.js --> /path/to/app/static/assets/script.js localhost:7777 --> /path/to/app/static/index.html localhost:7777/about --> /path/to/app/static/about.html
The absolute path to your static files directory
The number of milliseconds after serving after which the file should expire and shoud be requested again.
Defaults to one day.
The maximum size in bytes for a file to be cached in memory.
Defaults to 50kb. Set to 0 to disable in-memory caching.
Whether or not to gzip files before serving. (Only text files are gzipped, images and other media are sent as-is).
Defaults to true.
Whether or not to serve
*/index.html when the root of a directory is requested.
Defaults to true.
The default extension to append to files when no file extension is provided.
Defaults to '.html'. Set to
false to disable this feature.
Bug reports, feature requests, and other questions are all welcome: open a GitHub issue and I'll get back to you.