After working for the International Association for Cryptologic Research (IACR) for several months, I noticed how complicated the process for constructing conference schedules was. I pitched the idea of building a conference program creator to streamline the process for conference organizers.
I created the color palette for this project, then began to code. I knew the tool needed to connect to several internal databases and I wanted to work with a language I already knew. I found the excellent Dragula framework, which made the drag-and-drop interface I'd envisioned for this project possible.
The user submits a list of accepted papers in JSON format (in IACR's case, this list is derived from websubrev) and the dates for the conference. Users can save and return to edit a schedule later, or start from a basic template. Program Creator then displays the schedule for the given dates, along with the list of papers at left. The user can drag and drop papers into time slots. There are pop-up warnings that appear when there are too many papers in a time slot. Users can also add additional papers, time slots, or days to the schedule. The output is either a JSON file of the schedule for use in the program template I built or an HTML version of the schedule.
See the code on Github