README.md in jekyll-theme-conference-2.5.4 vs README.md in jekyll-theme-conference-3.0.0
- old
+ new
@@ -1,20 +1,19 @@
# jekyll-theme-conference
![Screenshot](screenshot.png)
-This is a [Jekyll](http://jekyllrb.com) theme based on [Bootstrap 4](http://getbootstrap.com) which can be used to make a simple, responsive website for a one-day conference or workshop with parallel tracks containing:
+This is a responsive [Jekyll](http://jekyllrb.com) theme based on [Bootstrap 4](http://getbootstrap.com) for conferences. It contains
-- program / schedule,
-- talk and speaker descriptions with
- + links to slides, and
- + embedded recordings,
+- multiday program / schedule,
+- talk and speaker descriptions,
- map for directions,
-- live indication and embedded video streaming.
+- realtime live indications during the conference, and
+- supports embedded video streaming or recordings.
-All components such as talks, speakers or rooms are represented as collection of files. The schedule is given is defined via a simple structure stored in a [YAML](https://en.wikipedia.org/wiki/YAML) file. There is no need for databases and once generated the website consists only of static files. A script and workflows are available for easy import, e.g. [frab](https://github.com/frab/frab/wiki/Manual#introduction) compatible schedules.
-The design is easily modifiable and is adapted for mobile uses and printing.
+All components such as talks, speakers or rooms are represented as collection of files. The schedule is given is defined via a simple structure stored in a [YAML](https://en.wikipedia.org/wiki/YAML) file. There is no need for databases and once generated the website consists only of static files. A script and workflows are available for easy import, e.g. of [frab](https://github.com/frab/frab/wiki/Manual#introduction) compatible schedules.
+The design is easily customizable and is adapted for mobile uses and printing.
The theme was originally created for the yearly Winterkongress conference of the [Digital Society Switzerland](https://digitale-gesellschaft.ch/). You can see this theme in action here:
- [Demo: Winterkongress](https://digitale-gesellschaft.ch/kongress/)
@@ -137,19 +136,11 @@
To get started, simply copy the desired workflow file to your repository and adapt it to your needs:
- `_tools/build.yml` -> `.github/workflows/build.yml`
-Hidden rooms, speakers, or talks are automatically generated in way containing no content. In order to remove these empty files simply add a file called `delete_hidden.sh` to the root with the following content. It will automatically called by the `build` workflow (if available) to delete the files.
-```markdown
----
-layout: delete_hidden
----
-```
-
-
## Configuration
All configurations and customization for this theme are stored under the `conference` property in the `_config.yml` file. You can find an example configuration containing most of the here discussed parameters under `_config.example.yml` in this repository.
### Theme Verification
@@ -328,25 +319,27 @@
In order to help users navigating the program during the congress, a _Live_ indication can be shown next to talks which are currently taking place. A small JavaScript functions keeps the site automatically up-to-date (without the need to refresh) showing the indication as soon as the talk has started and hiding it once it is over (according to the timetable indicated in the `_data/program.yml` file).
This can be further extended if some of the talks have an associated live stream: Upon clicking one of the live indications a modal will open containing the corresponding live stream embedded. The URL to the live stream has to be set via `live` property in each room (see the _Content_ > _Room_ section below).
-In order to activate the functionality the `live` property has to be set containing
+In order to activate the functionality, each day in the `program.yml` file must contain a `date` property (see section _Content_ > _Schedule / Program_ below) and the `live` property has to be set in the configuration file containing
-- the date of the day at which the conference takes place (`date`),
-- the timezone in which the conference takes place (`timezone`),
-- optionally if streaming is enabled (`streaming`) with indications how many minutes early the stream will begin and end, and
+- how long a pause between two consecutive talks has to be for the live indication to pause (`time_stop`),
+- optionally if streaming is enabled (`streaming`) with indications
+ + how many minutes the stream goes active before a talk (`time_prepend`),
+ + how many minutes the stream stays active after a talk (`time_extend`), and
+ + how long a pause between two consecutive talks has to be for the stream to pause (`time_pause`),
- optionally a demo mode setting, whereby the JavaScript function cycles through the entire program in five minutes for demonstration purposes (`demo: true`, default: `false`).
```yaml
conference:
live:
- date: 01.01.2020
- timezone: GMT+1
+ time_stop: 240 # in minutes
streaming:
- start_early: 15 # in minutes
- end_late: 0 # in minutes
+ time_pause: 60 # in minutes
+ time_prepend: 5 # in minutes
+ time_extend: 5 # in minutes
demo: false
```
### Talk Settings
@@ -464,36 +457,55 @@
The different talks, speakers and rooms are stored as a collection of file. Each file contains a small header in form of a YAML block (called [FrontMatter](https://jekyllrb.com/docs/front-matter/)) which is used to store additional information beside a description.
The actual schedule defining when and in which room a talk takes place is stored as a [YAML data file](https://jekyllrb.com/docs/datafiles/).
### Schedule / Program
-The schedule of the conference linking the talks with the rooms and indicating when each talk talks place and how long it goes is set in the `_data/program.yml` file. It consists of an array of rooms each consisting of a
+The schedule of the conference linking the talks with the rooms and indicating when each talk talks place and how long it goes is set in the `_data/program.yml` file. It contains a list of days, whereby each day contains a list of rooms, whereby each room contains a list of talks.
-- `room` name (must correspond to one of the room identifier), and
-- an array of `talks` which also can be empty `[]`.
+Each day consists of
-The order of the room in the file defines the order of the rooms on the website (program and room listings). Each talk in the array consists of
+- a list of rooms (`rooms`) in which talks are taking place on that day
+- optionally, the day's `name`, e.g. the weekday
+- optionally, the short form of the day's name (`abbr`), and
+- optionally only if no live indications are active, a `date` in the format `YYYY-MM-DD`.
+Each room consists of
+
+- the room's `name` (must correspond to one of the room identifier), and
+- a list of talks (`talks`) which also can be empty `[]`.
+
+The order of the rooms in the list defines the order of the rooms as shown in the schedule on the program page. For the live streaming or the room overview the order of the rooms is alphabetical but can be adapted via the [main configuration file](https://jekyllrb.com/docs/collections/#sort-by-front-matter-key).
+
+Each talk consists of
+
- a `name` (must correspond to one of the talk identifier),
- a starting time `time_start` given as `H:M` ([`strftime`](http://www.strfti.me) formated), and
- an end time `time_end`.
-The array should (manually) be ordered by time. Currently talks can only take place on the same day and multi-day conferences are not supported.
+The list of talks should (manually) be ordered by time, i.e. the first occurring talk should be listed first.
Example:
```yaml
-- room: Room A
- talks:
- - name: Vim Impetus Placerat Cotidieque Ad
- time_start: '12:00'
- time_end: '12:45'
- - name: Condimentum Vitae Sapien Pellentesque
- time_start: '12:45'
- time_end: '13:30'
-- room: Room B
- talks:
- ...
+days:
+- name: Monday
+ abbr: Mo
+ date: 2020-01-31
+ rooms:
+ - name: Room A
+ talks:
+ - name: Vim Impetus Placerat Cotidieque Ad
+ time_start: '12:00'
+ time_end: '12:45'
+ - name: Condimentum Vitae Sapien Pellentesque
+ time_start: '12:45'
+ time_end: '13:30'
+
+ - name: Room B
+ talks:
+ - name: Arcu Non Odio
+ time_start: '12:00'
+ time_end: '13:00'
```
### Talks
Each talk is represented by a file in the `_talks/` directory. It must begin with valid [YAML Front Matter](https://jekyllrb.com/docs/frontmatter/) containing