Crates.io | nlfmt-serve |
lib.rs | nlfmt-serve |
version | 0.5.3 |
created_at | 2025-03-07 01:32:14.779435+00 |
updated_at | 2025-04-19 01:35:42.713517+00 |
description | quickly serve files from a directory in your local network |
homepage | https://github.com/nlfmt/serve |
repository | https://github.com/nlfmt/serve |
max_upload_size | |
id | 1582139 |
size | 1,315,382 |
Quickly serve and receive files to/from anyone on your local network, using an easy web ui
Using cargo:
cargo install nlfmt-serve
serve --help
From source:
git clone https://github.com/nlfmt/serve
cd serve
# build frontend
cd app && pnpm i && pnpm build
cd .. && cargo install --path .
serve --help
Using the pre-built binaries: Go to the latest release and download the file for your operating system. Move it to any folder you want and add it to your PATH.
serve [args] [path]
When running the serve
command without any arguments, it will serve the current directory on port 3000, with all extra features like upload, file operations turned off.
Here is a list of flags available, or just run serve --help
serve -p 4001 # run on port 4001
serve -i 127.0.0.1 # only run on localhost (default is all interfaces - 0.0.0.0)
serve -u # enable uploads
serve -q # print QR Code when starting
serve -s # resolve symbolic links when serving files/folders
serve -r # allow renaming files
serve -d # allow deleting files
serve -o # allow overwriting files during upload
# you can combine these options
serve -uqs # enable upload & symlinks, print QR Code
# add username & password
serve -a user:pass
# file of logins formatted as user:pass separated by newlines
serve --auth-file ./mylogins.txt
--auth, -a
, or --auth-file
(maybe hashed?)-i
, --interface
--tls-cert
and --tls-key