publicviewing-cli

Crates.iopublicviewing-cli
lib.rspublicviewing-cli
version1.3.3
sourcesrc
created_at2024-11-13 09:18:31.569119
updated_at2024-11-16 16:21:26.278339
descriptionSmall command line application that displays one or many given URLs in a OS native WebView
homepagehttps://github.com/smuel-adm/publicviewing-cli
repositoryhttps://github.com/smuel-adm/publicviewing-cli
max_upload_size
id1446217
size1,210,059
Stefan Müller (smuel-adm)

documentation

https://github.com/smuel-adm/publicviewing-cli

README

PublicViewing-CLI

Small command line application that displays one or many given URLs in a native WebView.
This application is written in Rust and supports all major desktop platforms like Windows, macOS, and Linux.

docs.rs Crates.io Version

Usage

One use case might be on kiosk systems or interactive public displays. The following example executes the application with one URL as argument. Hint: Use the --cycle-sec parameter to regular reload the website.

publicviewing-cli https://blog.fefe.de

Another use case might be public signage displays that show monitoring or advertisement data. If you give more then one URL as argument the URL's are cycled each 10 seconds. The cycle time can be tuned with the --cycle-sec parameter.

publicviewing-cli https://blog.fefe.de https://zzeroo.com https://bbc.co.uk --cycle-sec 2

The parameters --fullscreen or --maximized can be used to control the start behavior of the WebView2 window. To send the window to a specific monitor screen use the --monitor parameter.
Use the option --above to keep the WebView window above all other windows.

Use command line argument --help for description of all parameters.

Usage: publicviewing-cli.exe [OPTIONS] [URLS]...

Arguments:
  [URLS]...  Optional url(s) to open, space separated [default: https://google.com]

Options:
  -a, --above                  window will always be above other windows
  -c, --cycle-sec <CYCLE_SEC>  cycle time between site reloads
                                   If more then one URL was given you should set this argument
                                   the URL's are cycled after that time.
                                   If only one URL was given the current url is reloaded after that time.
  -f, --fullscreen             open window in fullscreen
  -m, --maximized              open window maximized
      --monitor <MONITOR>      monitor number on which the window should open
                                   This has no effect if you have only one monitor!
                                   Android / Linux(Wayland): Unsupported
  -h, --help                   Print help
  -V, --version                Print version

Installation

Visit the projects releases page and download the packaged application that meets your OS. Extract the archive, in the subfolder publicviewing-cli you'll find the application publicviewing-cli or publicviewing-cl.exe, depends on your operation system. Then execute the application or put them in a PATH enabled location.

Tribute

This project utilizes the beautiful WRY library. For platform specific questions consult the WRY Documentation.

Dependencies

Windows (maybe optional)

Microsoft Visual C++ Redistributable must be installed on the target systems

[https://learn.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist]

On older systems it might be also necessary to install Microsoft's WebView2 Runtime.

[https://developer.microsoft.com/de-de/microsoft-edge/webview2]

License

GPL-3.0-or-later

Contributing

Contributions are always welcome! Please make sure to utilize before sending pull requests against our development branch:

  • cargo fmt for formatting

  • clippy

Commit count: 82

cargo fmt