This repository contains code for building a Jekyll site that shows upcoming events and builds and hosts .ics calendar files of those events that can be subscribed to. It was built with the idea of providing a central website containing research software engineering events in the UK that can be contributed to easily.
The calendar site is designed to show events only in one timezone (currently Europe/London). The ICalendar files built as part of the site deployment do support multiple timezones but when contributing an event it's important to ensure you contribute your events with times adjusted for [Europe/London].
There are 2 main ways to contribute an event to the calendar:
You can use the Add event GitHub Issue template to submit an issue where you complete the yaml block with details of your event to trigger a GitHub action workflow that automatically submits a pull request with your event details to the project. Allowing you to contribute an event without touching any code!
This pull request will need to be approved before your event appears on the website.
Note Your Pull request will be closed and immediately re-opened to trigger the test-build validation action. This is due to limitations with how GitHub actions can trigger other GitHub actions.
To add an event to the calendar you should suggest a pull request to the repository that updated the main data file to add a new event to the events section with the following YAML format:
- summary: title of your event
description: |
A description of your event that can be
over many lines
With URLs wrapped in <www.example.com>
location: A location (virtual or in real life)
begin: YYYY-mm-DD HH:MM:SS
# duration should contain a unit of time: minute, day, hour
# and an numeric value
duration: { minutes: 45 }
event_url: www.example.com
Note To ensure any extra URLs or email address in the description field are clickable, wrap them in angle brackets to allow the Kramdown processor to properly convert them into anchor elements.
We'll do our best to get to your pull request and merge it so your event is shown on the website and in the calendar feed.
First, thank you for wanting to contribute! We're very happy to review and accept contributions from others to improve this site.
To get started you should:
bundle install
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
./build.sh
will run the git-calendar toolpython _scripts/generate_posts.py
bundler exec jekyll serve
This projects builds on: