{"id":16556332,"url":"https://github.com/miraclx/zy","last_synced_at":"2025-03-21T10:32:25.884Z","repository":{"id":62287871,"uuid":"558560464","full_name":"miraclx/zy","owner":"miraclx","description":"Minimal and blazingly-fast file server. For real, this time.","archived":false,"fork":false,"pushed_at":"2022-11-06T20:26:59.000Z","size":232,"stargazers_count":27,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-17T20:56:39.755Z","etag":null,"topics":["cli","command-line","http","rust","server","static-file"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/miraclx.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE-APACHE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-10-27T19:51:27.000Z","updated_at":"2025-02-12T21:36:46.000Z","dependencies_parsed_at":"2023-01-21T04:17:27.368Z","dependency_job_id":null,"html_url":"https://github.com/miraclx/zy","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/miraclx%2Fzy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/miraclx%2Fzy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/miraclx%2Fzy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/miraclx%2Fzy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/miraclx","download_url":"https://codeload.github.com/miraclx/zy/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244778033,"owners_count":20508841,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","command-line","http","rust","server","static-file"],"created_at":"2024-10-11T20:04:15.756Z","updated_at":"2025-03-21T10:32:25.554Z","avatar_url":"https://github.com/miraclx.png","language":"Rust","readme":"# Zy\n\n\u003e Minimal and blazing-fast file server. For real, this time.\n\n[![Crates.io](https://img.shields.io/crates/v/zy?label=latest)](https://crates.io/crates/zy)\n[![CI](https://github.com/miraclx/zy/actions/workflows/ci.yml/badge.svg?branch=master)](https://github.com/miraclx/zy/actions/workflows/ci.yml)\n[![MIT or Apache 2.0 Licensed](https://img.shields.io/crates/l/zy.svg)](#license)\n\n## Features\n\n- [Single Page Application support](https://developer.mozilla.org/en-US/docs/Glossary/SPA)\n- Partial responses ([Range](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Range) support)\n- Cross-Origin Resource Sharing ([CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS))\n- [Automatic HTTP compression](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Encoding) (Zstd, Gzip, Brotli, Deflate)\n- Dynamic [cache control](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Cache-Control) (ETag, Last-Modified, Cache-Control)\n- Auto-served `index.html` files\n- Sane defaults\n  - No access to hidden files\n  - No access to content outside the base directory\n  - No access to symbolic links outside the base directory\n\n## Installation\n\nYou can download any of the pre-compiled binaries from the [releases page](https://github.com/miraclx/zy/releases).\n\nOr if you already have Rust installed, you can install it with `cargo`:\n\n\u003e - Please, note that the minimum supported version of Rust for `zy` is `1.59.0`.\n\u003e - Also, that the binary may be bigger than expected because it contains debug symbols. This is intentional. To remove debug symbols and therefore reduce the file size, you can instead run it with the `--profile slim` or simply just run `strip` on it.\n\n```console\ncargo install zy\n```\n\nAlternatively, you can also build the latest version of `zy` directly from GitHub.\n\n```console\ncargo install --git https://github.com/miraclx/zy.git\n```\n\n## Usage\n\n```console\nzy\n```\n\n_This will start serving your current directory on \u003chttp://localhost:3000\u003e by default._\n\n_...you can also specify a different port or base directory:_\n\n```console\nzy /path/to/serve\n```\n\n_...or perhaps different addresses:_\n\n```console\nzy -l 5000 -l 127.0.0.1:8080 -l 192.168.1.25\n```\n\n## Configuration\n\nYou can run `zy --help` to see all available options.\n\n```console\n$ zy --help\nZy 0.2.0\nMinimal and blazing-fast file server.\n\nUSAGE:\n    zy [OPTIONS] [DIR]\n\nARGS:\n    \u003cDIR\u003e    Directory to serve [default: .]\n\nOPTIONS:\n    -l, --listen \u003cURI\u003e    Sets the address to listen on (repeatable) [default: 127.0.0.1:3000]\n                          Valid: `3000`, `127.0.0.1`, `127.0.0.1:3000` [env: PORT]\n    -s, --spa             Run as a Single Page Application\n    -i, --index \u003cFILE\u003e    Index file to serve from the base directory [default: index.html]\n        --404 \u003cFILE\u003e      404 file to serve from the base directory [default: 404.html]\n    -c, --cache \u003cTIME\u003e    Cache time (max-age) [default: 1h]\n                          Valid: `10` for 10 seconds, `1h`, `1year 6months`\n        --no-cors         Disable Cross-Origin Resource Sharing (CORS)\n    -a, --all             Serve hidden files\n    -f, --follow-links    Follow symlinks outside of the base directory (unsafe)\n    -v, --verbose         Be verbose\n    -x, --confirm-exit    Require confirmation before exiting on Ctrl+C\n    -Z, --anonymize       Hide the `Server` and `X-Powered-By` headers [alias: `--anon`]\n    -h, --help            Print help information\n    -V, --version         Print version information\n```\n\n## Credits\n\nZy was originally inspired by [sfz](https://github.com/weihanglo/sfz), [serve](https://github.com/vercel/serve) and [http-server](https://github.com/http-party/http-server). It is written in [Rust](https://rust-lang.org) and uses [actix](https://github.com/actix/actix-web) as the web framework.\n\n## Contribution\n\nUnless you explicitly state otherwise, any contribution intentionally submitted\nfor inclusion in the work by you, as defined in the Apache-2.0 license, shall be\ndual licensed as below, without any additional terms or conditions.\n\n## License\n\nLicensed under either of\n\n- Apache License, Version 2.0\n   ([LICENSE-APACHE](LICENSE-APACHE) or \u003chttp://www.apache.org/licenses/LICENSE-2.0\u003e)\n- MIT license\n   ([LICENSE-MIT](LICENSE-MIT) or \u003chttp://opensource.org/licenses/MIT\u003e)\n\nat your option.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmiraclx%2Fzy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmiraclx%2Fzy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmiraclx%2Fzy/lists"}