Rattice

crates.io crates.io

A media viewer for web browsers written in Rust.
Images and videos are supported.

screencap

Screenshot of Rattice running with MIT-67 Indoor Scene Recognition Dataset images.

Installation

sh cargo install rattice

or download prebuilt binary from Releases.

Usage

Quick start

  1. Run rattice in arbitrary directory.
  2. Access http://localhost:3000/

More options

```shellsession $ rattice --help Rattice 0.1.3

USAGE: rattice [OPTIONS] [PORT]

ARGS: Listen port [env: RATTICE_PORT=] [default: 3000]

OPTIONS: -b, --bind-address

Bind address [env: RATTICEBINDADDR=] [default: ::]

-d, --docroot <DOCROOT>
        Specify document root directory [env: RATTICE_DOCROOT=]

-s, --sort-by <SORT_BY>
        Sort order [env: RATTICE_SORT_BY=] [default: name] [possible values: name, modified]

-u, --username <USERNAME>
        Username for Basic Authentication [env: RATTICE_USER]

-p, --password <PASSWORD>
        Password for Basic Authentication [env: RATTICE_PASS]

-R, --random-credencial <LENGTH>
        Generate random username and/or password with given length [env:
        RATTICE_RANDOM_CREDENCIAL=]

-c, --server-cert <SERVER_CERT>
        Server certificate for HTTPS [env: RATTICE_SERVER_CERT=]

-k, --server-key <SERVER_KEY>
        Server key for HTTPS [env: RATTICE_SERVER_KEY=]

-t, --title-prefix <TITLE_PREFIX>
        Prefix for HTML title tag [env: RATTICE_TITLE_PREFIX=] [default: Rattice]

FLAGS: -r, --reverse Reverse sort order [env: RATTICEREVERSE=] -e, --eager Disable lazy image loading [env: RATTICEEAGER=] -x, --use-real-ip Use X-Real-IP as client address in logs [env: RATTICEUSEREAL_IP=] -v, --verbose Increase log level (-v, -vv, -vvv, -vvvv) -h, --help Print help information -V, --version Print version information ```

License

Licensed under either of

at your option.

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 above, without any additional terms or conditions.