Skip to content

Latest commit

 

History

History
79 lines (53 loc) · 3.76 KB

README.md

File metadata and controls

79 lines (53 loc) · 3.76 KB

CFPDB -- A Call for Papers Database for collaborative use

CFPDB is a Call for Papers database which sorts conferences and highlights due dates according to the current date, intended for collaborative use.

The calendar is located at: https://dlazesz.github.io/cfpdb/

The iCalendar format is located at: https://raw.githubusercontent.com/dlazesz/cfpdb/gh-pages/conferences.ics

Usage

  1. Edit conferences.yaml in the conferences branch of this repository
  2. The calendar will be refreshed at 01:00 CET
  3. Check the calendar at: https://dlazesz.github.io/cfpdb/ or subscribe to the following iCalendar file: https://raw.githubusercontent.com/dlazesz/cfpdb/gh-pages/conferences.ics

Using the iCalendar file with Google Calendar

  1. Go to https://calendar.google.com
  2. In the left menu select the three vertical dots on the left of Add a friend's calendar
  3. Select Add by URL
  4. Insert the URL of the provided ics file (see above) and click Add calendar

Using the iCalendar file with Android

  1. Install ICSX5 (formely ICSDroid) from Play store, YALP store or F-droid
  2. Add the URL of the provided ics file (see above)
  3. Set name and color
  4. Set update frequency if needed

Setup

  1. Setup the key-based access to github and copy your private key to the private_key file

  2. Set the proper github repository name (the SSH variant of the remote url) in: update_cfpdb_on_github.py

  3. Setup a scheduled task to run the update:

    • Run the program in cron: HOME=$HOME $HOME/cfpbd/run_update_in_venv.py >> $HOME/cfpbd/update.log 2>&1
    • Run the program in virtualenv: run_update_in_venv.py
    • Run the program manually and push the changes: update_cfpdb_on_github.py
    • Run the program manually to see the changes locally: generate_html.py
    • Run the program on Heroku: clock.py

Install to Heroku

  • Sign up
  • Download and install Heroku CLI
  • Login to Heroku from the CLI
  • Create an app
  • Clone the repository
  • Add Heroku as remote origin
  • Setup the program (see step 1 and 2)
  • Push the repository to Heroku
  • Start the scheduled task: heroku ps:scale clock=1
  • Enjoy!

Architecture

There are three independent (orphan) branches in this repository:

  • master: contains the program and the setup instructions
  • conferences: contains conferences.yaml which stores the conference data (it is meant to be edited by the collaborators)
  • gh-pages: stores the rendered html file for the calendar to be shown as https://USERNAME.github.io/REPONAME

The updater process fetches conferences.yaml from the conferences branch in this repository and pushes the rendered html to the gh-pages branch.

New features

  • iCalendar file (.ics) generation which can be subscribed to (see description)

History

Code written between Nov 2008 and Nov 2010 by Bálint Sass

Full revision in Jan 2019 by Balázs Indig

Acknowledgement

I would like to express my gratitude to Bálint Sass for open sourcing the original program and enabling others to use and develop it.

License

This program is licensed under the LGPL 3.0 license.