Wondering what’s next for npm?Check out our public roadmap! »


    1.0.3 • Public • Published

    AIR — a lightweight prototyping framework for gun, riot and pug

    DISCLAIMER: totally work in progress

    air runs a web server that

    • serves static files from ./static
    • compiles tags in ./src/tags from pug to riot js
    • live syncs authoritative changes via GUN

    Getting started

    install air from npm or yarn

    yarn global add air-srv       OR         npm install -g air-srv

    initialize a minimal air project

    air init

    to start hacking, run


    and open http://localhost:8765/. You should see a minimal page.

    now, edit ./src/tags/hello-world.riot.tag to your liking. Save and boom.

    Command line options

    air [command] [options]
    serve                             [default] start a gun server on http
    init                              create a small air project in cwd
    print NODEPATH                    load NODEPATH and print as JSON
    version                           print version numbers and exit
    --file PATH         ./gundata/    set file parameter of Gun()
    --peers STRING                    comma-seperated list of URLs and IPs
                                      (IPs are expanded to http://IP:8765/gun)
    --no-color                        do not use any colors in output
    --debug                           print GUN debug info
    --silent                          reduce command line output
    --repl                            go into a repl (with gun instace)
    --config            ./air.json    read configuration from file
                                      set to false to ignore existing file
    --auth              ./.auth.json  file path or user:pass string
    [serve] OPTIONS
    --host STRING       set the ip to listen on
    --port NUMBER       8765          set the port to listen on
    --watch PATH                      log changes with gun.path(PATH).on()
    --certs PATH        ./certs       use https with cert files from PATH
                                      (key.pem, cert.pem, ca.pem)
    --nocerts                         disable auto-discovery of ./certs
    --webrtc                          load lib/webrtc
    --axe                             load axe
    --uploads           true          allow remote uploads
    --uploads.dir STR   uploads       uploads destination subfolder
    --uploads.limit N   50            uploads limit in MB
    [init] OPTIONS
    --overwrite         false         overwrite existing files and folders
    [print] OPTIONS
    --out FILENAME                    write to FILENAME instead of stdout
    --indent STRING                   indent characters for JSON output
    --debounce NUMBER   50            debounce .load() to resolve nested data
                                      set to 0 to disable debouncing
    --timeout NUMBER    1000          wait this much for answers to your request




    npm i air-srv

    DownloadsWeekly Downloads






    Unpacked Size

    2.89 MB

    Total Files


    Last publish


    • avatar