summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README53
1 files changed, 38 insertions, 15 deletions
diff --git a/README b/README
index 4cc1f31..cfa64b4 100644
--- a/README
+++ b/README
@@ -6,18 +6,18 @@ Dependencies:
slidonoscopy is written in node.js and requires some additional
modules:
- * connect
+
* express
* walk
* watch-tree
- * node-ical
+ * ical
+ * consolidate
+ * a templating engine compatible with consolidate (default: swig)
Currently a few patches to node-ical and watch-tree are required. node-ical has
to be updated to parse recurring rules. watch-tree needs a patch to support
-node 0.6. You can check out those updated packages from:
-
-git://l.unchti.me/watch-tree
-git://l.unchti.me/node-ical
+node 0.6. Additionally we use the experimental express 3.x. Simply installing
+all dependencies with npm should do the trick.
Usage:
======
@@ -40,14 +40,43 @@ $dir---slideshow1 -- events.js
|___slideshow3 -- events.js
|___ template.html
-The template is a simple HTML file where the key words $EVENTS and $IMAGES will
-be exchanged at runtime with the appropriate events and slides (as lists).
+Templates are written in the templating language of your choice. The defaults
+use swig. Read them to gather which variables are substituted for content.
Just execute
$ node main.js
to run slidenoscopy. The server will listen on port 8080 and will serve all
slideshows under slides/$name. Retrieving anything else will display a list of
all available slideshows.
+Configuration:
+==============
+
+The configuration file consists of the following keys:
+
+exports.modelBackend = 'fs';
+exports.Config = {
+ rootDir: 'slideshows' ,
+ templateEngine: 'swig',
+ listTemplate: 'index.html',
+ templateFile: 'template.html',
+ descriptionFile: 'desc.js',
+ eventFile: 'events.js',
+ ignoreDotFiles: 'false',
+ port: 8080
+};
+
+'rootDir' sets the root directory from which all slideshows are created.
+'templateEngine' selects the templating engine to use. It has to be compatible
+with consolidate.js and all slideshows have to use the same templating language.
+'listTemplate' is the template (relative to rootDir) used to create the listing
+of all slideshows
+'templateFile' is the actual template file used for a single slideshow
+'descriptionFile' is the JSON file containing the slide descriptions
+'eventFile' contains the URL to the Ical calendar or a list of events and dates
+'ignoreDotFiles' selects if 'hidden' (dot files) should be considererd when
+creating slideshows
+'port' sets the TCP port used for serving the slideshows
+
Events:
=======
@@ -63,10 +92,7 @@ For using a remote calendar the events.js file should contain the following fiel
}
The time offsets (seconds) are used to fetch past and future events from the
-calendar. All fields of each event are put into a div inside the event list
-element with the classes eventField and the name of the field. The example
-slideshows don't show those fields by default, but selectively enable known
-fields like summary and start time.
+calendar.
Slides:
=======
@@ -91,6 +117,3 @@ Descriptions are defined in desc.js as follows:
}
]
-The heading is put into a div inside the media tag (img or video) with the
-class slideHead. The description text is put into div inside the media tag with
-the class slideText.