Skip to content

feat: convert workshops to a Jekyll collection#204

Open
mmcky wants to merge 1 commit into
mainfrom
fix/197-workshops-collection
Open

feat: convert workshops to a Jekyll collection#204
mmcky wants to merge 1 commit into
mainfrom
fix/197-workshops-collection

Conversation

@mmcky
Copy link
Copy Markdown
Collaborator

@mmcky mmcky commented May 5, 2026

Summary

Converts workshops from hardcoded HTML in two separate files into a Jekyll collection, so adding a new workshop requires editing exactly one file.

Problem

Previously, adding a workshop meant updating two places manually:

  1. pages/workshops.md — the full workshops page
  2. _layouts/home.html — the hardcoded "Recent Workshops" list on the homepage

Solution

Introduced a _workshops/ Jekyll collection (similar to _lectures/ and _projects/).

Changes

_config.yml

Added workshops collection with output: false (no individual pages generated).

_workshops/ — 28 new data files

Each workshop is a markdown file named YYYY-MM-DD-slug.md with front matter:

title: "Workshop Title"
location: "Institution Name"
date: "YYYY-MM-DD"
year: YYYY
presenters: "Name, Name"
repo_url: "https://github.com/..."   # optional
description: "..."                    # optional, recent workshops only

pages/workshops.md

Rewritten as a Liquid template:

  • Recent workshops (year >= 2024): sorted newest-first, shown with full details (presenters, link, description)
  • Past workshops (year < 2023): grouped by year in a Bootstrap accordion, sorted newest-first, first year expanded

_layouts/home.html

Hardcoded 5-item list replaced with a Liquid loop:

{% assign recent_workshops = site.workshops | sort: "date" | reverse %}
{% for workshop in recent_workshops limit:5 %}

Verified

  • bundle exec jekyll build passes cleanly
  • Homepage "Recent Workshops" renders the same 5 entries (IUJ Feb 2026, IMF Dec 2025, Portugal Oct 2025, Hitotsubashi Sep 2025, Kyoto Jun 2025)
  • Workshops page renders all recent and past workshops with correct dates and locations

Adding a new workshop (going forward)

Create a single file _workshops/YYYY-MM-DD-slug.md — the homepage and workshops page both update automatically on the next build.

Closes #197

Replaces hardcoded HTML in pages/workshops.md and _layouts/home.html
with a Jekyll collection (_workshops/) so both locations stay in sync
automatically when a new workshop is added.

Changes:
- _config.yml: add 'workshops' collection (output: false)
- _workshops/: 28 workshop data files (YYYY-MM-DD-slug.md) with front
  matter fields: title, location, date, year, presenters, repo_url,
  description (optional)
- pages/workshops.md: rewritten as a Liquid template; recent workshops
  (year >= 2024) shown with full details, past workshops grouped by year
  in Bootstrap accordion sorted descending
- _layouts/home.html: hardcoded 5-item list replaced with Liquid loop
  over site.workshops sorted by date desc, limit 5

Adding a new workshop now requires only a single file in _workshops/.

Closes #197
Copilot AI review requested due to automatic review settings May 5, 2026 03:46
@netlify
Copy link
Copy Markdown

netlify Bot commented May 5, 2026

Deploy Preview for grand-swan-ca5201 ready!

Name Link
🔨 Latest commit b9d5468
🔍 Latest deploy log https://app.netlify.com/projects/grand-swan-ca5201/deploys/69f9682723b5990008fade1a
😎 Deploy Preview https://deploy-preview-204--grand-swan-ca5201.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR migrates workshop content from hardcoded HTML into a dedicated Jekyll collection (_workshops/), so the homepage “Recent Workshops” section and the /workshops/ page can both render from a single source of truth.

Changes:

  • Added a workshops collection in _config.yml and introduced _workshops/ Markdown front-matter entries for each workshop.
  • Rewrote pages/workshops.md to render “Recent” vs “Past” workshops via Liquid, including a year-grouped accordion for past workshops.
  • Updated _layouts/home.html to populate the homepage “Recent Workshops” list via a Liquid loop over site.workshops.

Reviewed changes

Copilot reviewed 31 out of 31 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
_config.yml Registers the workshops collection for use in Liquid templates.
_layouts/home.html Replaces hardcoded homepage workshop list with a dynamic Liquid loop.
pages/workshops.md Replaces hardcoded workshops page content with Liquid-driven rendering/grouping.
_workshops/2016-05-01-chicago-federal-reserve.md Adds workshop collection entry (data).
_workshops/2016-06-01-econometric-society.md Adds workshop collection entry (data).
_workshops/2016-10-01-university-of-economics-ho-chi-minh-city.md Adds workshop collection entry (data).
_workshops/2017-03-01-rba-rbnz.md Adds workshop collection entry (data).
_workshops/2017-06-01-university-of-chicago.md Adds workshop collection entry (data).
_workshops/2017-08-01-anu-ams.md Adds workshop collection entry (data).
_workshops/2017-09-01-us-phd-workshops.md Adds workshop collection entry (data).
_workshops/2018-03-01-anu-honours-workshop.md Adds workshop collection entry (data).
_workshops/2018-05-01-university-of-copenhagen.md Adds workshop collection entry (data).
_workshops/2019-04-01-department-of-industry-innovation-and-science.md Adds workshop collection entry (data).
_workshops/2022-07-01-research-school-of-economics-anu.md Adds workshop collection entry (data).
_workshops/2022-09-01-crest-paris.md Adds workshop collection entry (data).
_workshops/2022-09-15-central-bank-of-chile.md Adds workshop collection entry (data).
_workshops/2023-04-01-keio-university.md Adds workshop collection entry (data).
_workshops/2023-04-10-nagoya-university.md Adds workshop collection entry (data).
_workshops/2023-04-15-kobe-university.md Adds workshop collection entry (data).
_workshops/2023-10-01-columbia-university.md Adds workshop collection entry (data).
_workshops/2023-10-15-international-monetary-fund.md Adds workshop collection entry (data).
_workshops/2024-03-01-international-monetary-fund.md Adds workshop collection entry (data).
_workshops/2024-05-01-central-bank-of-chile.md Adds workshop collection entry (data).
_workshops/2024-08-01-university-of-melbourne.md Adds workshop collection entry (data).
_workshops/2024-11-01-reserve-bank-of-australia.md Adds workshop collection entry (data).
_workshops/2025-06-01-international-university-of-japan.md Adds workshop collection entry (data).
_workshops/2025-06-15-kyoto-university.md Adds workshop collection entry (data).
_workshops/2025-09-01-hitotsubashi-university.md Adds workshop collection entry (data).
_workshops/2025-10-01-bank-of-portugal.md Adds workshop collection entry (data).
_workshops/2025-12-01-international-monetary-fund.md Adds workshop collection entry (data).
_workshops/2026-02-01-international-university-of-japan.md Adds workshop collection entry (data).

Comment thread pages/workshops.md
Comment on lines 23 to 26
<ul>
<li><span>Presenters:</span> John Stachurski</li>
<li><a href="https://github.com/QuantEcon/rba_workshop_2024">The AI-driven Revolution in Scientific Computing</a></li>
<li><span>Presenters:</span> {{ workshop.presenters }}</li>
{% if workshop.repo_url %}<li><a href="{{ workshop.repo_url }}">{{ workshop.title }}</a></li>{% endif %}
</ul>
Comment thread pages/workshops.md
Comment on lines 55 to 58
<ul>
<li><span>Presenters:</span> John Stachurski</li>
<li><a href="https://github.com/QuantEcon/rse_comp_econ_2022">Website</a></li>
<li><span>Presenters:</span> {{ workshop.presenters }}</li>
{% if workshop.repo_url %}<li><a href="{{ workshop.repo_url }}">{{ workshop.title }}</a></li>{% endif %}
</ul>
Comment thread pages/workshops.md
Comment on lines +12 to +15
{% assign all_workshops = site.workshops | sort: "date" | reverse %}
{% assign recent_workshops = all_workshops | where_exp: "w", "w.year >= 2024" %}
{% assign past_workshops = all_workshops | where_exp: "w", "w.year < 2024" %}
{% assign past_years = past_workshops | map: "year" | uniq %}
Comment thread pages/workshops.md
Comment on lines +14 to +15
{% assign past_workshops = all_workshops | where_exp: "w", "w.year < 2024" %}
{% assign past_years = past_workshops | map: "year" | uniq %}
---
title: "Computational Economics Workshop"
location: "University of Chicago, Becker Friedman Institute"
date: "2017-06-01"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Convert homepage workshops section to use a Jekyll collection

2 participants