CLAUDE.md

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

Repository Overview

This is Sahil Satralkar’s personal website and portfolio built with Jekyll and hosted on GitHub Pages at sahilsatralkar.com. The site showcases iOS development work including published apps, blog posts, and professional experience.

Common Development Commands

Local Development

# Install dependencies (run once or when Gemfile changes)
bundle install

# Run development server with live reload
bundle exec jekyll serve

# Build site without serving
bundle exec jekyll build

# Clean generated files
bundle exec jekyll clean

Testing Changes

# Build with production settings
JEKYLL_ENV=production bundle exec jekyll build

# Check for broken links and HTML issues
bundle exec htmlproofer ./_site --disable-external

Architecture & Structure

Content Management

The site uses Jekyll’s content management system with the following key areas:

Blog Posts (_posts/):

Static Pages (_pages/):

Navigation (_data/navigation.yml):

Theme Customization

The site uses Minimal Mistakes theme with customizations:

Configuration (_config.yml):

Styling (_sass/minimal-mistakes/):

Asset Management

Images (assets/images/):

Adding New Content

New iOS App to Portfolio

  1. Add app section to _pages/portfolio.md following existing structure
  2. Include: app name, description, key features, technical stack, links
  3. Add app icon and screenshots to assets/images/
  4. Optional: Create accompanying blog post in _posts/

New Blog Post

  1. Create file in _posts/ with proper naming convention
  2. Include required front matter (layout, title, date, categories, tags)
  3. Add header image to assets/images/ and reference in front matter
  4. Use markdown for content with proper heading hierarchy

Deployment

The site automatically deploys to GitHub Pages when changes are pushed to the master branch. No manual deployment steps required.

Important Considerations