From 4c09840a7e756ff4a36c6bbb5fc92a3d3036c5b3 Mon Sep 17 00:00:00 2001 From: Benjamin Kiessling Date: Mon, 23 Jan 2012 01:08:48 +0100 Subject: Update README --- README | 68 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 62 insertions(+), 6 deletions(-) (limited to 'README') diff --git a/README b/README index f60172c..4cc1f31 100644 --- a/README +++ b/README @@ -1,5 +1,5 @@ -slidonoscopy is a software to create individual HTML(5) based -slideshows based on local data (text, images, videos...). +slidonoscopy is a software to create individual HTML based slideshows based on +local data (text, images, videos...) and (optionally) remote Ical calendars. Dependencies: ============= @@ -10,12 +10,21 @@ modules: * express * walk * watch-tree + * node-ical + +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 Usage: ====== Edit config.js to reflect the location of your slideshows und metadata/event -files. Slideshows are to be created under $dir with one directory per slideshow. +files. Slideshows are to be created under $dir with one directory per +slideshow. $dir---slideshow1 -- events.js | |___ slide1.jpg @@ -32,9 +41,56 @@ $dir---slideshow1 -- 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. +be exchanged at runtime with the appropriate events and slides (as lists). Just execute $ node main.js to run slidenoscopy. The server will listen on port 8080 and will serve all -slideshows under slides/$name. Retrieving / will display a list of all -available slideshows. +slideshows under slides/$name. Retrieving anything else will display a list of +all available slideshows. + +Events: +======= + +Events are substituted into the template either from a file or a remote ical +calendar. Using an ical calendar is recommended as it allows defining recurring +events. +For using a remote calendar the events.js file should contain the following fields: + +{ "type": "ical", + "url": "https://sublab.org:5232/calendars/events", + "before": 0, + "after": 11160 +} + +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. + +Slides: +======= + +Slides are created from each file in a subdirectory in the root directory +defined in config.js (as described above). Slides consist of a media file +(movies or images) and optionally a corresponding description. All media files +should have the same size (at least with the default themes) to ensure a smooth +transition between slides. +Descriptions are defined in desc.js as follows: + +[ + { + "file": "IMGP4596.jpg", + "head": "Kicker", + "text": "unser toller Profikicker" + }, + { + "file": "IMG.jpg", + "head": "foobar", + "text": "barfoo" + } +] + +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. -- cgit v1.2.1