aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README.md57
1 files changed, 57 insertions, 0 deletions
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..6760c78
--- /dev/null
+++ b/README.md
@@ -0,0 +1,57 @@
+# Picarones
+
+*"next slide please" as a service*
+
+A simple web app which displays slides, and allows multiple people
+to switch between them. Useful for presentations held in video chats
+that aren't meant for presentations (e.g. jitsi, zoom, ...). May also
+be useful to decrease bandwith when livestreaming talks.
+
+## Usage
+Go to the main site of your instance.
+
+Render your slides onto pdfs numbered 01.png, 02.png ... xy.png, and
+put them on some webserver which sets the cors header to either * or
+the origin of your instance (see the usage hint on the main page if
+you don't know how to do that).
+
+Tell Picarones the prefix of your images, and how many of them there
+are. Then share the generated link with all participants.
+
+If you need a version of your slides without a UI around it (e.g. for
+screen recorders or similar), replace the "slides.html" in the url
+with "display.html".
+
+## Installation
+
+If you use NixOS, just use it like this:
+
+```nix
+{config, pkgs, ...}:
+
+{
+ imports = [ path-to-this-repo ];
+
+ services.picarones = {
+ enable = true;
+ frontend = {
+ enable = true;
+ domain = "example.org";
+ proxyBackend = true;
+ # the attributes in this set are passed to the nginx virtualhost
+ config = {
+ enableACME = true;
+ forceSSL = true;
+ };
+ };
+ };
+
+ networking.firewall.allowedTCPPorts = [ 80 443 ];
+}
+```
+
+If you use some other OS, you can either still use nix to compile the front-
+and backend packages; alternatively, you can compile the backend (in `picarones-hs`)
+using `cabal`, and clobber the frontend together using the elm compiler. Elm
+doesn't have a sensible build system, so if you really don't want to use Nix
+you'll probably have to fiddle around with it manually.