#!/usr/bin/env bash # Required Binaries: # | simple-http-server # | sass # ===== Configuration ===== # ADDR="127.0.01" # bind address PORT="8000" # bind port WEBROOT="www" # root web directory USE_INDEX=true NO_CACHE=true SRV_ARGS="" SCSS_PATH="$WEBROOT/scss" CSS_PATH="$WEBROOT/css" # ========================= # # Watch .sass/.scss files and compile on change function watch_scss { # watch format "SCSS_PATH:OUT_PATH" sass --watch "$SCSS_PATH:$CSS_PATH" } function host ( local args="$SRV_ARGS" # Apply Flags if [[ "$NO_CACHE" == true ]]; then args+=" --nocache" fi if [[ "$USE_INDEX" == true ]]; then args+=" --index" fi # Apply Options args+=" --ip \"$ADDR\" --port \"$PORT\"" simple-http-server $args $@ -- "$WEBROOT" ) set -ueo pipefail set -x watch_scss & hostwww