CLAUDE.md
CLAUDE.md
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
Project Overview
This is a Jekyll-based personal blog hosted on GitHub Pages. The site uses the Minima theme with automatic light/dark mode switching and focuses on tech posts and travel content.
Common Commands
Development
bundle install- Install Ruby dependenciesbundle exec jekyll serve- Start local development server (typically runs on http://localhost:4000)bundle exec jekyll build- Build the site to_site/directory
Testing and Validation
./script/cibuild- Run the full CI build process (builds site and runs HTML validation)bundle exec htmlproofer ./_site- Validate HTML and check links after building
Dependencies
bundle update- Update gem dependenciesbundle update github-pages- Update GitHub Pages gem specifically
Architecture
Site Structure
_posts/- Blog posts in Markdown format with YYYY-MM-DD-title.markdown naming convention_layouts/- Jekyll layout templates (currently contains custom_page.html)_config.yml- Main Jekyll configuration filetravel/- Travel-related content and pagesassets/andimages/- Static assets_site/- Generated site output (ignored by git)
Content Organization
- Blog posts use Jekyll’s standard front matter format
- Travel content is organized in a separate
travel/directory with its own index page - The site uses Jekyll’s built-in pagination and feed generation
Theme and Plugins
- Uses Minima theme v2.5.1 with GitHub Pages compatibility
- Key plugins: jekyll-feed, jekyll-seo-tag, jekyll-remote-theme
- Configured for automatic light/dark mode switching via Minima skin setting
Deployment
- Automatically deployed via GitHub Pages on push to main branch
- Travis CI integration for build validation (legacy configuration present)
- HTML validation included in CI pipeline using html-proofer