hyperdrive-http

    4.4.0 • Public • Published

    Hyperdrive Http

    Serve a hyperdrive archive over HTTP. For an example of use, see dat.haus.

    Travis

    Usage

    Hyperdrive-http returns a function to call when you receive a http request:

    var server = http.createServer().listen(8000)
    server.on('request', hyperdriveHttp(archive))

    Supports manifest options in dat.json:

    • web_root - change directory to serve on index
    • fallback_page - fallback for 404 errors

    Setup

    To use hyperdrive-http you will need to:

    • Create your own http server
    • Setup your hyperdrive archive
    • For remote archives, connect to the swarm

    API

    Hyperdrive works with many archives/feeds or a single archive.

    Options

    • exposeHeaders - If set to true, hyperdrive-http will add custom Hyperdrive- HTTP headers to directory listing requests (default: false):
      Hyperdrive-Key: de2a51bbaf8a5545eff82c999f15e1fd29637b3f16db94633cb6e2e0c324f833
      Hyperdrive-Version: 4
    • live - If set to true will reload a directly listing if the archive receives updates.
    • footer - Add a footer to your HTML page. Automatically adds archive version number to footer.

    URL Format

    Hyperdrive-http responds to any URL with a specific format. If the URL does cannot be parsed, it will return a 404.

    • Get archive listing: http://archive-example.com/
    • Get file from archive: http://archive-example.com/filename.pdf

    If a directory in the archive contains an index.html page that file is returned instead of the directory listing. If you'd like to view files use a query string:

    • View files: http://archive-example.com/?viewSource=true

    CLI

    There is also a CLI that can be used for demo + testing. Pass it a dat link or a path to an existing dat folder:

    node cli.js <dat-key>
    node cli.js /path/do/existing/dat
    

    Install

    npm i hyperdrive-http

    DownloadsWeekly Downloads

    138

    Version

    4.4.0

    License

    MIT

    Unpacked Size

    23.2 kB

    Total Files

    11

    Last publish

    Collaborators

    • karissa
    • maxogden
    • yoshuawuyts
    • mafintosh
    • jhand
    • rangermauve
    • zootella
    • serapath
    • ninabreznik
    • cblgh
    • frando
    • pfrazee
    • the-real-dk
    • leichtgewicht
    • juliangruber