This is a tweaked version of the code that runs OpenNews' SRCCON schedule, currently in testing and filled with randomized session data from last year's MozFest (so start times might look a little weird here and there). Design and UI updates are in the works to help this scale to MozFest.
Design notes:
- built primarily for mobile use, assuming that people will need this on location at the event
- tapping on a session opens its full description (using a template that allows for additional data if necessary)
- provides a full-text, searchable session list in addition to day-by-day schedule tabs
- session favoriting (using browser localstorage) populates a per-device custom schedule tab
- can use appcache, such as it is, to provide offline support for those special conference wifi moments
- repo includes local versions of OpenSans font files, to get around cache manifest fetching bugs in some browsers
- does its best to handle "back" navigation in offline mode, where there is no
window.history
- highlights schedule tab for current date if possible
- colors denote normal-length and long sessions, and long sessions are "ghosted" into the following schedule block to show that they're still going on
Technical notes:
- stores data in a single json file, generated by a Python script that pulls data from a Google Docs spreadsheet
- designed to publish via GitHub Pages (triggering the Python script to update schedule data also creates an automated commit, which rebuilds the schedule site)
- uses jQuery and Underscore for DOM and data manipulation
- uses marked for pretty text formatting
This app was originally built on the fly in the week before SRCCON 2014, so some components are fairly bespoke. A couple things I've been intending to address:
- tab dates are defined in
schedule.js
itself, rather than calculated by looking for unique values from the list of sessions - color categories are tied to SRCCON's 1- and 2.5-hour session formats