lightstatic 1.0.1

lightweight static file server
extern crate core;

mod args;
mod config;
mod helper;
mod logger;
mod pid;
mod server;
mod server_core;
mod store;
mod util;

use crate::logger::initialize_log;
use crate::pid::handle_arg_signal;
use async_std::path::PathBuf;

#[async_std::main]
async fn main() -> tide::Result<()> {
  let args = args::get_args();
  let cwd = PathBuf::from(std::env::current_dir().unwrap());
  initialize_log(&args, &cwd);
  if !args
    .signal
    .as_ref()
    .map(|s| handle_arg_signal(s))
    .unwrap_or(false)
  {
    server::bootstrap(args, cwd).await
  } else {
    Ok(())
  }
}