Skip to content

Add automated bibliography system for newsletter using Zotero/BibTeX#52

Draft
Copilot wants to merge 76 commits into
mainfrom
copilot/use-zotero-jekyll-scholar
Draft

Add automated bibliography system for newsletter using Zotero/BibTeX#52
Copilot wants to merge 76 commits into
mainfrom
copilot/use-zotero-jekyll-scholar

Conversation

Copy link
Copy Markdown

Copilot AI commented Nov 16, 2025

Description

Implements automated bibliography management for newsletter "Interesting Reads" section to eliminate AI hallucinations in citations.

Problem: jekyll-scholar requires Jekyll 4.x but GitHub Pages uses 3.10.0 (incompatible).

Solution: BibTeX → YAML → Liquid template pipeline.

Implementation

  • scripts/bibtex_to_yaml.py - Parses BibTeX, formats authors (abbreviates >3), generates YAML
  • _includes/bibliography-entry.html - Liquid template matching newsletter style (bold authors, italicized titles/venues)
  • _data/interesting_reads.bib - Sample bibliography exported from Zotero
  • _template/newsletter-template.md - Auto-renders entries filtered by read_status=Unread

Workflow

Zotero collection → Export BibTeX → scripts/bibtex_to_yaml.py → Jekyll renders

Output Example

BibTeX:

@inproceedings{obrien2025llm,
  title = {How Scientists Use Large Language Models to Program},
  author = {O'Brien, G.},
  booktitle = {CHI '25: Proceedings of the CHI Conference on Human Factors in Computing Systems},
  pages = {1--16},
  year = {2025},
  doi = {10.1145/3706598.3713668},
  read_status = {Unread}
}

Renders as:

G. O'Brien, "How Scientists Use Large Language Models to Program," CHI '25: Proceedings of the CHI Conference on Human Factors in Computing Systems, pp. 1–16, 2025. Read the article.

Documentation

  • _data/README_BIBLIOGRAPHY.md - Complete workflow
  • _data/BIBLIOGRAPHY_EXAMPLES.md - Examples and troubleshooting
  • IMPLEMENTATION_SUMMARY.md - Technical details

Fixes #[issue-number]

Checklist:

  • I have previewed changes locally or with CircleCI (runs when PR is created)
  • I have completed any content reviews, such as getting input from relevant working groups. If no, please note this and wait to post the PR to the #website channel until the content has been settled.
Original prompt

This section details on the original issue you should resolve

<issue_title>Use Zotero and Jekyll-scholar to automate "interesting reads" section (NO AI)</issue_title>
<issue_description>Due to the previous embarrassing snafu that AI was hallucinating URLs of articles we asked it to format, I want to go the pure code route. The plan is as follows:

  1. Throughout the month, collect interesting media, be it official peer reviewed publications, blog posts, or videos, in zotero with a dedicated bibtex bibliography. This zotero collection could even be shared with the community as a group.
  2. In zotero, use a special tag (such as the read status plugin https://github.com/Dominic-DallOsto/zotero-reading-list ) to categorise what has already been published and what is waiting for the next edition
  3. When the time to publish comes, export the full bibliography bibtex file to the repo/update the bibtex file in the repo (e.g. in _data)
  4. In the website repo, use the jekyll-scholar plugin syntax https://github.com/inukshuk/jekyll-scholar to query the bibliography for zotero entries that have NOT been read by the read status plugin
# Interesting Reads

{% bibliography --query @*[read_status=Unread] %}
  1. Customise the CSL so that entries in the above bibliography come out in the way that we have been shaping them for a newsletter, eg:

- **G. O’Brien**, _"How Scientists Use Large Language Models to Program,"_ *CHI ’25: Proceedings of the CHI Conference on Human Factors in Computing Systems*, pp. 1–16, 2025. [Read the article.](https://doi.org/10.1145/3706598.3713668)
</issue_description>

Comments on the Issue (you are @copilot in this section)


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

github-actions and others added 30 commits August 30, 2025 02:20
Update deadline for next round of for US-RSE Community and Travel Funds
Co-authored-by: github-actions <github-actions@users.noreply.github.com>
Google Form responses 619 and 620

Signed-off-by: Chad Dougherty <crd477@icloud.com>
* Automated push to update jobs files 2025-08-23

* add september community call

* Update _events/2025/2025-09-community-call.md

Co-authored-by: Julia Damerow <jdamerow@users.noreply.github.com>

---------

Co-authored-by: github-actions <github-actions@users.noreply.github.com>
Co-authored-by: Julia Damerow <jdamerow@users.noreply.github.com>
Co-authored-by: github-actions <github-actions@users.noreply.github.com>
Google Form response 621

Signed-off-by: Chad Dougherty <crd477@icloud.com>
* Fixed broken link, replaced some <a>s with Markdown URLs.

* Changed Slack links so they go directly to the channel.

* Improved text.
Co-authored-by: github-actions <github-actions@users.noreply.github.com>
…SE#1782)

Google Form response 622

Signed-off-by: Chad Dougherty <crd477@icloud.com>
Google Form response 623

Signed-off-by: Chad Dougherty <crd477@icloud.com>
Google Form response 624

Signed-off-by: Chad Dougherty <crd477@icloud.com>
collectively submitted in Google Form response 625

Signed-off-by: Chad Dougherty <crd477@icloud.com>
Copilot AI and others added 4 commits November 16, 2025 01:52
Co-authored-by: TinasheMTapera <15770644+TinasheMTapera@users.noreply.github.com>
Co-authored-by: TinasheMTapera <15770644+TinasheMTapera@users.noreply.github.com>
Co-authored-by: TinasheMTapera <15770644+TinasheMTapera@users.noreply.github.com>
Co-authored-by: TinasheMTapera <15770644+TinasheMTapera@users.noreply.github.com>
Copilot AI changed the title [WIP] Automate interesting reads section using Zotero and Jekyll scholar Add automated bibliography system for newsletter using Zotero/BibTeX Nov 16, 2025
Copilot AI requested a review from TinasheMTapera November 16, 2025 02:08
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.

Use Zotero and Jekyll-scholar to automate "interesting reads" section (NO AI)