CLAUDE.md

CLAUDE.md

This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.

Commands

  • Run Server (Local): bundle exec jekyll serve -l -H localhost (serves at localhost:4000)
  • Run Server (Docker): docker compose up
  • Install Dependencies: bundle install (Ruby) and npm install (Node)
  • Build Assets: npm run build:js

Content Management

Blog Posts

Create a new file in _posts/ named YYYY-MM-DD-your-title.md. Front Matter Template:

---
title: "Your Post Title"
date: YYYY-MM-DD
permalink: /posts/YYYY/MM/your-title/
tags:
  - tag1
  - tag2
---

Publications

Create a new file in _publications/ named YYYY-MM-DD-paper-title.md. Front Matter Template:

---
title: "Paper Title"
collection: publications
category: conferences # or manuscripts, books (see _config.yml)
permalink: /publication/YYYY-MM-DD-paper-title
excerpt: "Short abstract or description."
date: YYYY-MM-DD
venue: "Journal or Conference Name"
paperurl: 'http://link-to-paper'
citation: 'Your Name. (YYYY). "Title." Venue.'
---

Talks

Create a new file in _talks/ named YYYY-MM-DD-talk-title.md. Front Matter Template:

---
title: "Talk Title"
collection: talks
type: "Talk" # or Tutorial, Keynote
permalink: /talks/YYYY-MM-DD-talk-title
venue: "Event Name"
date: YYYY-MM-DD
location: "City, Country"
---

Configuration Reference

1. Site Identity & SEO (_config.yml)

  • Title/Name: title, name, description.
  • URL: url (e.g., https://username.github.io).
  • Author: author block (name, bio, location, email, social links).
    • Update avatar path (relative to images/).
    • Update googlescholar, github, twitter, linkedin URLs.
  • Verification: google_site_verification, bing_site_verification in _config.yml.
  • Analytics: analytics.provider (e.g., “google-analytics-4”) and analytics.google.tracking_id.

2. Navigation & Menus (_data/navigation.yml)

  • Controls the top navigation bar.
  • Structure: ```yaml main:
    • title: “Publications” url: /publications/ ```
  • To hide a section (e.g., Teaching), comment it out in this file.

3. Localization (_data/ui-text.yml)

  • Defines standard UI strings (e.g., “Page”, “Next”, “Share on”).
  • Edit the en block for English defaults.
  • Change locale in _config.yml to switch languages (e.g., locale: "es-ES").

4. Comments (_config.yml)

  • Enable by setting comments.provider (e.g., “disqus”, “facebook”, “staticman”).
  • Configure specific provider settings under the provider key (e.g., comments.disqus.shortname).

5. Publication Categories (_config.yml)

  • Defined under publication_category.
  • Default: books, manuscripts, conferences.
  • Modifying these keys changes how publications are grouped.

Architecture

  • Type: Jekyll static site using “Academic Pages” theme.
  • Structure:
    • _pages/: Static pages like About, CV.
    • _includes/: Reusable HTML components (head, footer, sidebar).
    • _layouts/: Page templates (default, archive, single).
    • assets/:
      • css/: Generated CSS.
      • images/: Static images.
    • _sass/: SCSS source files (edit _themes.scss for colors/fonts).
    • markdown_generator/: Scripts to auto-generate content from CSV/BibTeX.