This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
# Start the Hugo development server with draft posts visible
hugo server -D
# Start server without drafts
hugo server# Build the site for production
hugo --minify
# Build with specific base URL (used in GitHub Actions)
hugo --minify --baseURL "https://rrsharp122.github.io/"This is a Hugo-based static website using the PaperMod theme. Key directories:
content/: All site content in Markdown format- Main pages:
About Me.md,Research Background.md,Science Communication.md,Contact.md - Posts go in
content/posts/(create subdirectories for categories)
- Main pages:
layouts/: Custom HTML templates overriding theme defaultslayouts/partials/: Partial templates for header, footer, etc.layouts/_default/: Page templates
assets/css/: Custom CSS files (main customization incustom.css)static/: Static assets served as-isstatic/images/: All images referenced in contentstatic/pdfs/: PDF documents
themes/PaperMod/: Git submodule containing the theme
- config.yaml: Main Hugo configuration
- Base URL:
https://rrsharp122.github.io/ - Theme: PaperMod
- Menu structure defined here
- Social links and SEO metadata
- Base URL:
The site automatically deploys to GitHub Pages via GitHub Actions when changes are pushed to the main branch. The workflow is defined in .github/workflows/hugo.yml and uses Hugo Extended version 0.121.0.
- All content pages use standard Hugo front matter
- Images should be placed in
static/images/and referenced as/images/filename.jpg - Custom styling goes in
assets/css/custom.css - The site uses a light theme only (theme toggle is disabled)
The site extends the PaperMod theme with custom layouts and styles:
- Custom header and footer in
layouts/partials/ - Extended CSS in
assets/css/custom.cssandassets/css/extended/custom.css - Custom contact page template at
layouts/_default/contact.html
The site uses a layered CSS approach:
- Base Theme CSS: PaperMod theme styles (constraints:
--main-width: 720px) - hero.css: Hero section specific styles with media queries
- custom.css: Main customization file (2700+ lines) with:
- WCAG AA compliant color scheme
- Bootstrap 5 navbar integration
- Responsive breakpoints at 600px, 992px
- Accessibility enhancements (skip links, ARIA labels)
- Enhanced image styling with shadows and borders
- Improved typography and spacing
- Implemented Bootstrap 5 responsive navbar with hamburger menu
- Added skip-to-main-content link for keyboard navigation
- Enhanced form labels with ARIA descriptions
- Improved color contrast ratios (all text ≥4.5:1 for WCAG AA)
- Made navbar sticky on mobile devices
- Added proper heading hierarchy
- Hero section padding increased to 80px at 841px+ breakpoint
- Added subtle backgrounds to About Me and Research sections
- Enhanced image borders and shadows
- Added visual separators to h2 headers
- Styled h3 headers with primary color accent
- Improved text-image alignment with better float rules
- Added text justification for better readability
- Global
h2#my-researchmargin with!importantflag - Fixed hero.css media query conflicts
- Improved specificity for reliable style application
- Added responsive rules for mobile layouts
Inspired by BMSchilder's website design, implementing:
- Filterable research portfolio with panel-like display
- Data structure:
data/portfolio.yamlwith publications, articles, presentations - Categories: publications, articles, preprints, presentations
- Implementation via Hugo shortcode
{{< portfolio >}} - Files to create:
data/portfolio.yaml- Portfolio datalayouts/shortcodes/portfolio.html- Portfolio grid templateassets/css/portfolio.css- Portfolio stylingassets/js/portfolio.js- Filtering JavaScript
Professional timeline for career milestones:
- Data structure:
data/timeline.yamlwith career events - Custom Hugo timeline with CSS animations
- Implementation via Hugo shortcode
{{< timeline >}} - Files to create:
data/timeline.yaml- Timeline datalayouts/shortcodes/timeline.html- Timeline templateassets/css/timeline.css- Timeline stylingassets/js/timeline.js- Interactive features
Reference site analyzed: _private/BMSchilder-master/
- Framework: Pure HTML/CSS/JS with Bootstrap 4
- Key features: particle.js background, D3.js portfolio, embedded visualizations
- Adaptation strategy: Hugo-native approach with shortcodes for better content management