7 unstable releases (3 breaking)
new 0.4.0 | Oct 27, 2024 |
---|---|
0.3.3 | Oct 19, 2024 |
0.3.0 | Aug 20, 2024 |
0.2.0 | Aug 5, 2024 |
0.1.1 | Aug 3, 2024 |
#69 in HTTP server
331 downloads per month
110KB
1K
SLoC
Table of Contents↗️
Fidelity Fetch
fife
Purpose
Serve files efficiently on a local network.
- Browse/open/download the files through a web browser
- Easily configurable server
- Support for range requests
- Single self-contained binary
- mDNS/DNS-SD capabilities
Quick Start
Recursively serve <path>
and all its contents at <hostname>.local:<port>
fife -p <port> -m <hostname> --root <path>
The content can be browsed through a web browser at http://<hostname>.local:<port>
Note: Many phones do not support mDNS resolution, but your PC does unless it is ancient. In that case you need to specify the IP instead of the mDNS hostname to access the contents.
The contents can also be fetched through the command-line, e.g.
curl http://<hostname>.local:<port>/some/path/to/file.txt # Get file.txt
curl -r 99-499 http://<hostname>.local:<port>/foo.bin # Starting from byte 99, get the next 400 bytes of foo.bin
If no port is specified, any available port is used (fife
requests a free port from the OS).
Demo
Installing and setting up on a Raspberry Pi Zero W
Installation
Prebuilt binaries
Check out the the release page.
From source
cargo install fidelityfetch
TODO: Yocto recipe
Dependencies
~10–19MB
~256K SLoC