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 personal portfolio website for Daniel Saeedi, a PhD candidate at Georgia Tech specializing in AI/ML research. The site showcases publications, projects, and professional experience in astrobiology, AI safety, and machine learning.
Architecture and Structure
Frontend Technology Stack
- Static HTML/CSS/JavaScript website - No build system or package.json required
- CSS Framework: Bootstrap with custom styling
- JavaScript Libraries:
- jQuery for DOM manipulation
- Swiper.js for carousel/slider functionality
- Isotope.js for portfolio filtering
- Magnific Popup for image galleries
- Various animation libraries (Splitting.js, Jarallax, Scrolla)
File Organization
/
├── index.html # Main homepage
├── blog.html # Blog listing page
├── blog-single.html # Individual blog post template
├── works.html # Portfolio grid view
├── works-list.html # Portfolio list view
├── work-single.html # Individual project template
├── index2.html # Alternative homepage variant
├── assets/
│ ├── css/
│ │ ├── style.css # Main stylesheet
│ │ ├── dark.css # Dark theme styles
│ │ └── vendors/ # Third-party CSS
│ ├── js/
│ │ ├── common.js # Custom JavaScript
│ │ └── [libraries] # Third-party JS libraries
│ ├── images/ # Site images and assets
│ └── fonts/ # Font files and icons
└── mailer/ # PHP contact form handler
Key Features
- Responsive Design: Mobile-first Bootstrap-based layout
- Dark/Light Theme Toggle: Implemented via CSS classes and JavaScript
- Portfolio Filtering: Isotope.js-powered category filtering for projects
- Smooth Animations: Multiple animation libraries for scroll-based effects
- Contact Form: PHP-based email handling in
/mailer/directory
Development Workflow
Local Development
- This is a static website that can be served directly from any web server
- No build process required - edit HTML/CSS/JS files directly
- Test locally using any static file server (e.g.,
python -m http.server, Live Server extension)
Content Updates
- Projects/Publications: Update the works section in
index.htmlaround lines 280-511 - Personal Info: Modify the hero section in
index.htmlaround lines 175-246 - Resume/Experience: Edit the resume section around lines 529-690
- Styling: Main styles in
assets/css/style.css, dark theme inassets/css/dark.css
Key Sections to Know
- Hero Section (
#started-section): Personal introduction and profile - Works Section (
#works-section): Portfolio with filtering by category - Resume Section (
#resume-section): Education and experience timeline - Navigation: Full-overlay menu system with smooth animations
Content Management
- Portfolio items use data attributes for filtering (e.g.,
sorting-publications,sorting-ai-research) - Images are organized by project in
/assets/images/ - Social links and external URLs are hardcoded in HTML
Important Notes
- No package manager or build tools - all dependencies are included as static files
- PHP mailer functionality requires server-side PHP support for contact forms
- Dark/light theme switching is client-side only via CSS class toggling
- Portfolio filtering relies on Isotope.js and custom data attributes for categories