Link Search Menu Expand Document

Project Notes

CV ↔ Website Sync

The CV and website share a single source of truth: YAML data files in _data/.

Workflow

  1. Edit YAML files in _data/ (add/update papers, talks, people, etc.)
  2. Run python sync.py (or python sync.py --no-compile to skip PDF)
  3. Both index.md and __CV/CV_Kangwook_Lee.tex are updated between SYNC: markers
  4. CV PDF is compiled and copied to CV_Kangwook_Lee.pdf at the repo root

NEVER edit generated sections in index.md or CV_Kangwook_Lee.tex directly. Edit the YAML instead and re-run sync.py. Generated sections are between <!-- SYNC:...:BEGIN --> / <!-- SYNC:...:END --> markers in index.md and % SYNC:...:BEGIN / % SYNC:...:END markers in the .tex file.

Data files (_data/)

| File | Contents | |——|———-| | publications.yml | All papers (145+). Key fields: title, authors, venue, year, type (preprint/conference/workshop/journal/abstract), selected, url, award, award_type, cv_label, venue_full, location, month | | talks.yml | All talks (95+). Key fields: title, venue, year, month, topic (foundation_models/fairness/distributed_ml/other), selected, video | | people.yml | Lab members & alumni. Key fields: name, role, link, photo, graduation_year, current_position | | awards.yml | Awards and honors | | grants.yml | Research grants | | teaching.yml | Courses taught | | service.yml | Professional service (reviewing, editing, etc.) | | background.yml | Education, appointments, work experience |

Common tasks

  • Add a paper: Add entry to publications.yml, set selected: true if it should appear in the selected list, then run python sync.py
  • Add a talk: Add entry to talks.yml with a topic field, then run python sync.py
  • Add a lab member: Add entry to people.yml with a photo in assets/images/members/, then run python sync.py

CV

  • The correct CV LaTeX file is __CV/CV_Kangwook_Lee.tex (NOT _cv_Lee_wo_grants.tex)
  • Compile with pdflatex from the __CV/ directory
  • The website serves CV_Kangwook_Lee.pdf (copied from compiled output)

Website

  • Jekyll site using Just-the-Docs theme, deployed on GitHub Pages
  • Single-page layout: all content in index.md, sidebar hidden via CSS
  • Custom JS is inlined in index.md (theme doesn’t auto-load _includes/js/custom.js)
  • Custom styles in _sass/custom/custom.scss
  • bundle exec jekyll serve to preview locally