#web-server #live-reload #live #reload #web

bin+lib live-server

Launch a local network server with live reload feature for static pages

19 releases (10 breaking)

Uses new Rust 2024

0.11.0 Oct 21, 2025
0.10.1 Jun 15, 2025
0.10.0 Feb 16, 2025
0.9.0 Nov 4, 2024
0.3.0 Mar 12, 2022

#546 in HTTP server


Used in 2 crates

MIT license

37KB
751 lines

crate-badge License check-badge

Live Server

Launch a local network server with live reload feature for static pages.

Binary

You can use it as a CLI program.

Install

$ cargo install live-server

Usage

$ live-server -h
Launch a local network server with live reload feature for static pages

Usage: live-server [OPTIONS] [ROOT]

Arguments:
  [ROOT]  Set the root path of the static assets [default: .]

Options:
      --index           Show directory listings if there is no index.html
  -H, --host <HOST>     Set the listener host [default: 0.0.0.0]
  -p, --port <PORT>     Set the listener port [default: 0]
  -o, --open [<PAGE>]   Open the page in browser automatically
      --browser <PATH>  Specify a particular browser to open the page with
      --hard            Hard reload the page on update instead of hot reload
  -I, --ignore          Ignore hidden and ignored files
      --poll            Create listener using `PollWatcher`
  -h, --help            Print help (see more with '--help')
  -V, --version         Print version
$ live-server
[2023-12-22T15:16:04Z INFO  live_server::server] Listening on http://10.17.95.220:6634/
[2023-12-22T15:16:04Z INFO  live_server::watcher] Listening on /home/mirus/html-demo

Log Level

You can set different RUST_LOG environment variable to filter the log. The default log level is info.

Package

You can also import it as a library in your project.

Create live server

use live_server::{listen, Options};

listen("127.0.0.1:8080", "./").await?.start(Options::default()).await;

Enable logs (Optional)

env_logger::init();

Dependencies

~17–32MB
~367K SLoC