CLAUDE.md
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
Local development
bundle install
bundle exec jekyll serve
# With live reload:
bundle exec jekyll serve --livereload
Site runs at http://127.0.0.1:4000. No build step is needed before serving — Jekyll builds on the fly.
Architecture
This is a minimal Jekyll site deployed via GitHub Pages. The Gemfile pins github-pages to stay compatible with GitHub’s build environment.
Content files:
pages/index.md,pages/cv.md,pages/blog.md— main site pages_posts/YYYY-MM-DD-title.md— blog posts (file date determines publish date)post_examples/— reference posts excluded from the build (see_config.ymlexclude list)
Templates:
_layouts/default.html— shared shell: header, nav, footer, dark/light theme toggle, Google Analytics, JSON-LD Person schema on homepage_layouts/post.html— wrapsdefault, adds BlogPosting JSON-LD schema, sidebar with 10 other posts, and loads post-specific JS (code copy, footnote formatting)
Frontend JS (assets/js/):
theme-toggle.js/header-scroll.js/menu-toggle.js— loaded on every pagehome-network.js— canvas network animation, homepage onlycode-copy.js/footnote-commas.js/footnote-links.js— post pages only
Styling: single assets/css/styles.css, uses CSS custom properties for theming (dark/light via data-theme attribute on <html>).
Post front matter
---
title: Post title here
description: One-sentence summary for SEO and post cards.
tags:
- pharmacovigilance
- LLMs
---
layout and author are injected by _config.yml defaults — don’t repeat them in posts.
Deployment
Push to main on GitHub; GitHub Pages builds and deploys automatically using the github-pages gem.