This file provides context and conventions for AI assistants working in this repository.
This is a personal academic website for Ayal Chen-Zion, an economist. It is a Jekyll static site hosted on GitHub Pages at achenzion.github.io. The site showcases research papers, blog posts, teaching experience, and software resources.
github-pages gem)master branch on push)assets/styles.scss)jekyll-github-metadata (GitHub API data), jekyll-octicons (SVG icons)assets/styles.scss + _sass/_highlight-syntax.scss).
├── _config.yml # Jekyll site configuration (layout, style, projects, social)
├── Gemfile # Ruby gem dependencies
├── index.html # Homepage (uses 'home' layout)
├── favicon.ico
│
├── _layouts/ # Page layout templates
│ ├── default.html # Base layout with optional sidebar
│ ├── home.html # Homepage layout (includes all sections)
│ └── post.html # Blog post layout
│
├── _includes/ # Reusable Liquid components
│ ├── header.html # <head> meta tags, CSS, dark/light mode
│ ├── footer.html # Page footer
│ ├── masthead.html # Profile sidebar (avatar, bio, links, social icons)
│ ├── projects.html # GitHub repos section (reads from GitHub API)
│ ├── research.html # Research posts section (tag: research)
│ ├── thoughts.html # Blog posts section (tag: blog)
│ ├── interests.html # Topics/interests section (from _config.yml)
│ ├── post-card.html # Blog post card component
│ ├── repo-card.html # Repository card component
│ └── topic-card.html # Interest/topic card component
│
├── _data/
│ ├── colors.json # Programming language → color mappings (for repo cards)
│ └── social_media.yml # Social network definitions (icons, URL templates)
│
├── _posts/ # Blog and research posts
│ └── YYYY-MM-DD-title.{html|md}
│
├── _sass/
│ └── _highlight-syntax.scss # Code block syntax highlighting
│
├── assets/
│ └── styles.scss # Main stylesheet (imports Primer CSS + custom styles)
│
├── pdfs/ # PDF documents
│ ├── ChenZion_Resume.pdf
│ ├── ChenZion_Resume.tex
│ └── research/ # Research paper PDFs
│ └── teaching/ # Teaching statement PDFs
│
├── research/index.html # Research page (filters posts by tag: research)
├── teaching/index.html # Teaching page (static HTML)
├── thoughts/index.html # Resources hub page
│ ├── economics/index.html
│ └── software/index.html
# Install dependencies
bundle install
# Serve locally with live reload
bundle exec jekyll serve
# Site available at http://localhost:4000
# Note: "No GitHub API authentication" warning is expected and harmless
After changing _config.yml, restart the server (Ctrl+C, then re-run) — Jekyll does not hot-reload config changes.
Pushing to the master branch automatically triggers GitHub Pages to rebuild and deploy the site. No CI/CD pipeline or manual build step is required.
All content lives in _posts/ with filename format:
YYYY-MM-DD-title.html (preferred — most existing posts use HTML)
YYYY-MM-DD-title.md (also supported)
All posts default to the post layout via _config.yml defaults — no need to specify layout in front matter.
Front matter fields:
---
title: "Post Title"
published: true # false to draft/hide; omit to default true
tag: # used to filter posts into sections
- research # appears in research.html include
- blog # appears in thoughts.html include
# also: economics, software, privateSector
status: "Journal, Month Year" # publication status for research posts
coauthors: # HTML links to co-author pages (for research posts)
- <a href="..." target="_blank">Name</a> and
- <a href="..." target="_blank">Name</a>
---
tag: research for academic papers; use tag: blog for blog posts.research.html limit).thoughts.html limit).privateSector tag is used on the research page to distinguish academic vs. private sector work.Static pages (e.g. research/index.html, teaching/index.html) use the default layout and filter site.posts by tag using Liquid:
...
...
...
...
_config.yml)Key settings:
| Setting | Current Value | Notes |
|---|---|---|
layout |
sidebar |
Two-column on desktop. Change to stacked for single-column. |
style |
light |
White/gray background. Change to dark for dark theme. |
projects.sort_by |
pushed |
Sort repos by last push. Alternative: stars. |
projects.limit |
5 |
Number of repos shown on homepage. |
projects.exclude.forks |
true |
Forked repos are hidden. |
resume |
/pdfs/ChenZion_Resume.pdf |
Linked from masthead. |
To add social media links, uncomment the relevant lines under social_media: and provide the username/ID.
To enable the “My Interests” section, add entries under topics: with name, web_url, and image_url.
assets/styles.scss — do not copy it locally.assets/styles.scss after the Primer import._sass/_highlight-syntax.scss.col-12, col-md-8, p-3, bg-gray)._posts/YYYY-MM-DD-Paper-Title.htmltag: [research], status:, coauthors: (see above)<p> tags_posts/YYYY-MM-DD-Post-Title.html or .mdtag: [blog], published: truepage-name/index.html (or page-name.html at root)layout: default, title: "Page Title"/page-name/Replace pdfs/ChenZion_Resume.pdf. The .tex source is also in pdfs/ for editing.
_data/colors.json — large auto-generated language color map; leave as-is unless updating language colors._data/social_media.yml — social network definitions; only modify to add new networks, not to change personal usernames (those go in _config.yml).assets/styles.scss — the HTML uses many Primer utility classes that would break without it.master — production branch; pushes deploy immediately to GitHub Pagesmaster