Skip to content

Add per-member publication lists from Google Scholar on members page#265

Draft
Copilot wants to merge 6 commits into
sourcefrom
copilot/create-publication-list-from-google-scholar
Draft

Add per-member publication lists from Google Scholar on members page#265
Copilot wants to merge 6 commits into
sourcefrom
copilot/create-publication-list-from-google-scholar

Conversation

Copy link
Copy Markdown

Copilot AI commented May 15, 2026

Summary

This PR adds publication lists for each current WAVLab member to the members page at https://www.wavlab.org/members/.

Changes

New data infrastructure

  • _data/members.yml — Member registry with Google Scholar IDs, roles, and website links for all current lab members.
  • _data/scholar_pubs/ — Per-member publication YAML files (9 files) seeded from the lab's existing papers.bib. Publication counts: Shinji Watanabe (285), William Chen (37), Jinchuan Tian (25), Jee-weon Jung (21), Samuele Cornell (20), Shikhar Bharadwaj (6), Masao Someki (5), Chien-yu Huang (3), Jaeyeon Kim (0 from lab bib, links to Scholar).

Updated members page

  • _pages/members.md — Added collapsible <details> publication sections after each role group (Faculty, Post-Doc, PhD Students, Master Students, Industrial Collaborators). Each section shows up to 20 recent papers with a link to the member's full Google Scholar profile.

Automation tooling

  • bin/fetch_scholar.py — Python script using the scholarly library to fetch and update publications directly from Google Scholar. Run with python3 bin/fetch_scholar.py (requires pip install scholarly pyyaml).
  • .github/workflows/update-publications.yml — GitHub Actions workflow that runs the fetch script weekly (Sundays at midnight UTC) to keep publication data current. Can also be triggered manually.

How it works

  1. The members page shows each member's publications in a collapsible <details> element.
  2. Publications are served from _data/scholar_pubs/<member_id>.yml which are static YAML files.
  3. Each section shows up to 20 recent publications plus a "View all on Google Scholar ↗" link.
  4. The weekly workflow updates the YAML files from Google Scholar automatically.

Notes

  • Initial data is seeded from the lab's papers.bib (lab co-authored papers). Running fetch_scholar.py will replace this with each member's complete Google Scholar bibliography.
  • Members without a Google Scholar ID (Jinchuan Tian, Masao Someki) link to their personal websites instead.
  • The remaining "and and Understanding" in one paper title is a pre-existing typo in papers.bib, not introduced by this PR.

cyhuang-tw and others added 4 commits June 2, 2026 16:22
…guard against data loss

- members.md: HTML-escape all Scholar-sourced fields (title, venue, year) and
  restrict publication links to http(s):// to prevent injection from the
  auto-fetched data; switch hardcoded colors to theme CSS vars for dark mode;
  move Jee-weon's "Showing 20 of N" note outside the <ol> (valid HTML).
- update-publications.yml: open a pull request for review via
  peter-evans/create-pull-request instead of pushing scraped data straight to
  the source branch.
- fetch_scholar.py: skip saving when Google Scholar returns no publications so a
  soft-block can't overwrite good seeded data with an empty file.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
…e-scholar

Bring the PR branch up to date with source (12 commits), including the
polyfill.io removal and the conference tracker, so local builds match
production and the diff reflects current source.
Replace the bottom-of-section publication dumps with data-driven member
cards (photo, website/Scholar links, and a co-located Publications
expander) rendered by a new _includes/member_card.html partial. Every
Scholar-sourced field is HTML-escaped and links are restricted to
http(s) to avoid injection.

Drive every member section, including Visitors, from _data/members.yml
via a unified card grid, removing ~320 lines of hand-written HTML and all
hardcoded Scholar URLs.

Add the four visitors (Dahee Yang, Chin-Jou Li, Thanapat Trachu,
Kuang-Da Wang) with their Scholar IDs and empty publication data files,
correct Shinji Watanabe's Scholar ID, and add Jinchuan Tian's and Masao
Someki's.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
- Rewrite fetch_scholar.py to read each author's publication list without
  per-paper fill() (which triggered Scholar rate-limiting and stalled runs)
  and collapse exact-duplicate titles, keeping the newest-year copy
- Store a lean {total, latest 25} per member; render the true total badge
  and "Showing 20 of N" in member_card.html
- Refresh all 13 members with real, deduplicated Scholar data
  (Shinji 836->812, Samuele 99->98 after dedup; others unchanged)
- Set Dynamic-SUPERB Phase-2 venue to ICLR for Chien-yu

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
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.

3 participants