Skip to content

Releases: miraclx/zy

v0.2.0

06 Nov 04:04
1593c56
Compare
Choose a tag to compare

What's changed?

  • Support for the PORT environment variable.
  • Human cache time input (e.g. 1h, 1year 6months).
  • --anonymize flag to hide the Server and X-Powered-By headers.
  • Added zstd compression support.
  • Dynamic cache control (ETag, Last-Modified, Cache-Control).
  • Auto-served index.html files.
  • Use println over tracing for trivial logs.

Crate Link: https://crates.io/crates/zy/0.2.0

Full Changelog: v0.1.1...v0.2.0

🎉 Thanks to @miraclx for their contributions to this release. 🎉

Initial Release: v0.1.1

30 Oct 00:50
56f9641
Compare
Choose a tag to compare

Zy

Minimal and blazingly-fast file server. For real, this time.

Features

Installation

To install zy, you need Rust 1.59.0 or higher. You can then use cargo to build everything:

cargo install zy

You can also install the latest version (or a specific commit) of zy directly from GitHub.

git clone https://github.com/miraclx/zy.git
cargo install --path zy

Usage

zy

This will start serving your current directory on http://localhost:3000 by default.

...you can also specify a different port or base directory:

zy /path/to/serve

...or perhaps different addresses:

zy -l 5000 -l 127.0.0.1:8080 -l 192.168.1.25

Configuration

You can run zy --help to see all available options.

$ zy --help
Zy 0.1.1
Minimal and blazing-fast file server.

USAGE:
    zy [OPTIONS] [DIR]

ARGS:
    <DIR>    Directory to serve [default: .]

OPTIONS:
    -l, --listen <URI>    Sets the address to listen on (repeatable)
                          Valid: `3000`, `127.0.0.1`, `127.0.0.1:3000` [default: 127.0.0.1:3000]
    -s, --spa             Run as a Single Page Application
    -i, --index <FILE>    Index file to serve from the base directory [default: index.html]
        --404 <FILE>      404 file to serve from the base directory [default: 404.html]
    -c, --cache <SECS>    Cache time (max-age) in seconds [default: 3600]
        --no-cors         Disable Cross-Origin Resource Sharing (CORS)
    -a, --all             Serve hidden files
    -f, --follow-links    Follow symlinks outside of the base directory (unsafe)
    -v, --verbose         Be verbose
    -x, --confirm-exit    Require confirmation before exiting on Ctrl+C
    -h, --help            Print help information
    -V, --version         Print version information

Credits

Zy was originally inspired by sfz, serve and http-server. It is written in Rust and uses actix as the web framework.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted
for inclusion in the work by you, as defined in the Apache-2.0 license, shall be
dual licensed as below, without any additional terms or conditions.

License

Licensed under either of

at your option.