CLAUDE.md

CLAUDE.md

Guide for AI assistants working on this repository.

Project Overview

Personal Jekyll-based static blog for azubkov.com, hosted on GitHub Pages. The site documents Andrey Zubkov’s relocation from Korea to the USA (2015–2017) with photo galleries and personal experiences. Built on the Clean Blog Bootstrap theme with custom AngularJS components.

Repository Structure

├── _layouts/            # Jekyll layout templates (default.html, post.html)
├── _includes/           # Reusable template fragments (header, footer, nav, carousel, photos)
├── _posts/              # 51 blog posts in markdown (2015-03 to 2017-03)
├── _sass/               # Sass partials (_blog.scss, _resume.scss)
├── css/                 # Bootstrap 3.x, Clean Blog theme CSS, blog.scss entry point
├── js/                  # jQuery, Bootstrap, AngularJS controllers, Flickr photo data
├── img/                 # Hero/background images
├── fonts/               # Bootstrap Glyphicons
├── index.html           # Homepage with pagination
├── about.html           # Resume/professional bio
├── contact.html         # Contact form
├── rus-kor.html         # AngularJS-powered items listing
├── _config.yml          # Jekyll configuration
├── CNAME                # Custom domain: azubkov.com
├── Guardfile            # LiveReload configuration
└── .gitignore           # Ignores _site/, .sass-cache/, .idea/

Build & Development

Prerequisites

Commands

# Build the site
jekyll build

# Serve locally with auto-rebuild
jekyll serve

# Live reload during development (watches _site/ for changes)
guard

Configuration

_config.yml settings:

No CI/CD

There are no GitHub Actions workflows. Deployment is automatic via GitHub Pages on push to master.

Content Conventions

Blog Posts

Posts live in _posts/ using the naming convention: YYYY-MM-DD-slug-title.md

Front matter fields:

Field Required Description
title Yes Post title
description Yes Subtitle/excerpt shown below the title
layout Yes Always post
image No Hero background image filename (from /img/)
photoset No Date key referencing a photo album in js/flickr.js
carousel No true for carousel display, omit for photo grid
ogimage No Open Graph image URL for social sharing

Pages

Top-level HTML pages use this front matter pattern:

Field Description
layout default
title Page title
navTitle Short label for navigation menu (falls back to title)
description Page subtitle
group Set to "navigation" to appear in navbar
order Navigation sort order (1=Home, 2=Resume, 3=Contact)
image Hero background image

Layout System

Template hierarchy: default.html is the base layout; post.html extends it.

Key includes:

JavaScript

No build pipeline or module bundler. Scripts are loaded directly.

Styling

External Services

Git Conventions

Important Notes