Nutritious Pumpkin Masses

    diet-ecstatic

    0.1.1 • Public • Published

    diet-ecstatic

    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

    Usage

    Create the middleware by passing an options object to ecstatic

    const server = require('diet')
    const ecstatic = require('diet-ecstatic')
     
    const app = server()
     
    app.listen('http://localhost:7777')
     
    app.footer(ecstatic({path: app.path + '/static'}))

    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
    

    Options

    opts.path

    The absolute path to your static files directory

    opts.expires

    The number of milliseconds after serving after which the file should expire and shoud be requested again.

    Defaults to one day.

    opts.maxCachedSize

    The maximum size in bytes for a file to be cached in memory.

    Defaults to 50kb. Set to 0 to disable in-memory caching.

    opts.gzip

    Whether or not to gzip files before serving. (Only text files are gzipped, images and other media are sent as-is).

    Defaults to true.

    opts.autoindex

    Whether or not to serve */index.html when the root of a directory is requested.

    Defaults to true.

    opts.defaultExtension

    The default extension to append to files when no file extension is provided.

    Defaults to '.html'. Set to false to disable this feature.

    Contact

    Bug reports, feature requests, and other questions are all welcome: open a GitHub issue and I'll get back to you.

    Install

    npm i diet-ecstatic

    DownloadsWeekly Downloads

    0

    Version

    0.1.1

    License

    MIT

    Unpacked Size

    1.97 MB

    Total Files

    20

    Last publish

    Collaborators

    • cutejs