a simple example for pict-rs usage
Go to file
asonix d467dfb2d1
continuous-integration/drone/push Build is passing Details
Don't print terrible upstream errors
2023-07-17 22:02:45 -05:00
.cargo Re-enable console 2022-02-26 12:30:03 -06:00
docker Bump version 2022-09-28 18:36:42 -05:00
images Images in readme 2020-06-17 18:33:45 -05:00
scss Add video playback support, fix upload page on small screens 2021-01-05 10:43:48 -06:00
src Don't print terrible upstream errors 2023-07-17 22:02:45 -05:00
static Use pict-rs's background uploading feature 2022-05-02 20:38:46 -05:00
templates Don't print terrible upstream errors 2023-07-17 22:02:45 -05:00
.drone.yml Update to latest actix web 2021-12-28 10:55:20 -06:00
.gitignore Add flake 2023-03-09 21:30:31 -06:00
Cargo.lock Bump versions 2023-07-14 21:39:22 -05:00
Cargo.toml Bump versions 2023-07-14 21:39:22 -05:00
LICENSE Working noscript-compatible pict-rs frontend 2020-06-13 16:23:43 -05:00
README.md Bump version 2022-09-28 18:36:42 -05:00
flake.lock Update flake.lock 2023-07-13 20:03:13 -05:00
flake.nix Add flake 2023-03-09 21:30:31 -06:00
pict-rs-proxy.nix Bump versions 2023-07-14 21:39:22 -05:00



a demo frontend for pict-rs supporting noscript

Index page Upload page



$ pict-rs-proxy -h
A simple web frontend for pict-rs

Usage: pict-rs-proxy [OPTIONS]

  -a, --addr <ADDR>
          The address and port the server binds to [env: PICTRS_PROXY_ADDR=] [default:]
  -u, --upstream <UPSTREAM>
          The url of the upstream pict-rs server [env: PICTRS_PROXY_UPSTREAM=] [default: http://localhost:8080]
  -d, --domain <DOMAIN>
          The scheme, domain, and optional port of the pict-rs proxy server [env: PICTRS_PROXY_DOMAIN=] [default: http://localhost:8081]
      --console-event-buffer-size <CONSOLE_EVENT_BUFFER_SIZE>
          Number of events to buffer for the console subscriber. When unset, console will be disabled [env: PICTRS_PROXY_CONSOLE_BUFFER_SIZE=]
  -o, --opentelemetry-url <OPENTELEMETRY_URL>
          URL of OpenTelemetry Collector [env: PICTRS_PROXY_OPENTELEMETRY_URL=]
  -h, --help
          Print help information
  -V, --version
          Print version information


Running on all interfaces, port 8081, proxying to localhost:8080

$ ./pict-rs-proxy

Running locally, port 9000, proxying to localhost:4000

$ ./pict-rs-proxy -a -d localhost:4000 -u localhost:4000

Docker production

# Create a folder for the files (anywhere works)
mkdir ./pict-rs-proxy
cd ./pict-rs-proxy
mkdir -p volumes/pictrs
sudo chown -R 991:991 volumes/pictrs
wget https://git.asonix.dog/asonix/pict-rs-proxy/raw/branch/main/docker/prod/docker-compose.yml
sudo docker-compose up -d

Docker development

git clone https://git.asonix.dog/asonix/pict-rs-proxy
cd pict-rs-proxy/docker/dev
docker-compose up --build


Feel free to open issues for anything you find an issue with. Please note that any contributed code will be licensed under the AGPLv3.


Copyright © 2021 Riley Trautman

pict-rs-proxy is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

pict-rs-proxy is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. This file is part of pict-rs.

You should have received a copy of the GNU General Public License along with pict-rs. If not, see http://www.gnu.org/licenses/.