Skip to content

sprusr/campus-expert-calendar

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Campus Expert Calendar logo

A Probot app that reads events from issues and adds them to a Google Calendar. Created for use within Campus Experts.

Use

When you install the app, CE Calendar will post an issue on all installed repos prompting you to carry out the additional setup steps. These consist of:

  1. Authing with Google Calendar
  2. Commenting on the issue with the generated code
  3. Finding the ID of the calendar you want to add events to
  4. Setting up your .github/calendar.yml config file

After these steps, your config should look something like this:

regex: \d{4}-\d{2}-\d{2}$ # regex to match date in title
format: YYYY-MM-DD # format of the above, for use with moment.js
gcal_calendar: id_goes_here # instructions in issue posted when app is added to repo
gcal_token: encrypted_token_here # same here
event_label: event # if you only want event issues with a certain label added to the calendar

Developers

If you want to contribute or run your own instance of Campus Expert Calendar, this is the section for you. First up, you'll want to create a GitHub app with the following permissions:

  • Issues: read & write
  • Single file: read-only, path: .github/calendar.yml
  • Events: Issues, Issue comment

Download the application's private key and save it to the same directory as this readme.

Copy .env.example to .env and set the APP_ID, WEBHOOK_SECRET and get the user ID of your app for APP_USER_ID. If you're using something like smee.io for development, set WEBHOOK_PROXY_URL to the appropriate URL.

Next up, create a Google API application and enable Google Calendar. In .env, set GCAL_CLIENT_ID, GCAL_CLIENT_SECRET and GCAL_REDIRECT_URL. Generate a long random string and use it as the value for GCAL_TOKEN_SECRET.

Finally, you should be able to install the required dependencies and launch the app:

npm install
npm start

More info on Probot deployment can be found in the Probot docs.

About

📅 Adds events from issues to a Google Calendar

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published