Skip to content

Commit 4496c1f

Browse files
committed
Cleanup and optimize website
- Remove unused collections (docs, recipes, pets) from config - Delete sample/template pages and portfolio placeholders - Remove unused Lunr search files (using Algolia instead) - Remove duplicate jQuery 1.12.4 and unused smooth-scroll plugin - Add lazy loading to figure and gallery image templates - Add font-display: swap to Latin Modern fonts for faster loading - Clean up commented code in _main.js - Add CLAUDE.md for project documentation
1 parent 2609f76 commit 4496c1f

20 files changed

+81
-4667
lines changed

CLAUDE.md

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
# CLAUDE.md
2+
3+
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
4+
5+
## Project Overview
6+
7+
This is a Jekyll-based personal academic website for Hosein Fooladi, a Machine Learning researcher. The site uses the Minimal Mistakes theme and is hosted on GitHub Pages. It showcases research publications, blog posts, teaching activities, and talks.
8+
9+
## Development Commands
10+
11+
### Local Development
12+
```bash
13+
# Install dependencies
14+
bundle install
15+
16+
# Build the site
17+
rake build
18+
# or
19+
jekyll build --profile --trace --config _config.yml,_config.dev.yml
20+
21+
# Serve locally for development
22+
bundle exec jekyll serve --config _config.yml,_config.dev.yml
23+
# or
24+
rake serve
25+
```
26+
27+
### Build Configuration
28+
- Production config: `_config.yml`
29+
- Development config: `_config.dev.yml` (overrides production settings)
30+
- Development server runs on http://localhost:4000
31+
32+
## Site Architecture
33+
34+
### Content Collections
35+
The site uses Jekyll collections to organize different types of content:
36+
37+
- `_posts/` - Blog posts (Markdown files with YAML frontmatter)
38+
- `_publications/` - Research publications with citations and abstracts
39+
- `_teaching/` - Teaching activities and courses
40+
- `_talks/` - Conference talks and presentations
41+
- `_portfolio/` - Project portfolio items
42+
- `_pages/` - Static pages (About, Archive pages, etc.)
43+
44+
### Key Configuration
45+
- **Theme**: Minimal Mistakes remote theme (`mmistakes/minimal-mistakes@master`)
46+
- **Search**: Algolia-powered search with full content indexing
47+
- **Comments**: Utterances for GitHub-based comments
48+
- **Analytics**: Google Universal Analytics
49+
- **Social**: Twitter, GitHub, LinkedIn integration
50+
51+
### Layouts and Defaults
52+
- Posts use `single` layout with author profile disabled
53+
- Pages use `single` layout with author profile enabled
54+
- Publications and talks use `single` layout with sharing enabled
55+
- All content supports comments except docs
56+
57+
### Content Structure
58+
- Publications include citation format, venue, and paper URLs
59+
- Posts support tags, table of contents (toc), and MathJax
60+
- All content uses permalink patterns defined in `_config.yml`
61+
62+
### Assets and Styling
63+
- Custom CSS in `assets/css/` (academicons, collapse effects)
64+
- Custom fonts including Latin Modern and Font Awesome
65+
- JavaScript for interactive elements in `assets/js/`
66+
67+
## Important Notes
68+
- Site builds to `_site/` directory
69+
- Uses GitHub Pages compatible plugins only
70+
- Supports both local development and GitHub Pages deployment
71+
- Search index managed through Algolia with API key configuration

_config.yml

Lines changed: 0 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -197,15 +197,6 @@ kramdown:
197197

198198
# Collections
199199
collections:
200-
docs:
201-
output: true
202-
permalink: /:collection/:path/
203-
recipes:
204-
output: true
205-
permalink: /:collection/:path/
206-
pets:
207-
output: true
208-
permalink: /:collection/:path/
209200
portfolio:
210201
output: true
211202
permalink: /:collection/:path/
@@ -239,28 +230,6 @@ defaults:
239230
values:
240231
layout: single
241232
author_profile: true
242-
# _docs
243-
- scope:
244-
path: ""
245-
type: docs
246-
values:
247-
layout: single
248-
read_time: false
249-
author_profile: false
250-
share: false
251-
comments: false
252-
toc_sticky: true
253-
sidebar:
254-
nav: "docs"
255-
# _recipes
256-
- scope:
257-
path: ""
258-
type: recipes
259-
values:
260-
layout: single
261-
author_profile: true
262-
share: true
263-
comments: true
264233
# _teaching
265234
- scope:
266235
path: ""

_includes/figure

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
<figure class="{{ include.class }}">
22
{%- if include.popup -%}<a href="{{ include.image_path | relative_url }}" class="image-popup"{% if include.caption %} title="{{ include.caption | markdownify | strip_html }}"{% endif %}>{%- endif -%}
33
<img src="{{ include.image_path | relative_url }}"
4-
alt="{% if include.alt %}{{ include.alt }}{% endif %}">
4+
alt="{% if include.alt %}{{ include.alt }}{% endif %}"
5+
loading="lazy">
56
{%- if include.popup -%}</a>{%- endif -%}
67
{%- if include.caption -%}
78
<figcaption>

_includes/gallery

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,11 +22,13 @@
2222
<a href="{{ img.url | relative_url }}"
2323
{% if img.title %}title="{{ img.title }}"{% endif %}>
2424
<img src="{{ img.image_path | relative_url }}"
25-
alt="{% if img.alt %}{{ img.alt }}{% endif %}">
25+
alt="{% if img.alt %}{{ img.alt }}{% endif %}"
26+
loading="lazy">
2627
</a>
2728
{% else %}
2829
<img src="{{ img.image_path | relative_url }}"
29-
alt="{% if img.alt %}{{ img.alt }}{% endif %}">
30+
alt="{% if img.alt %}{{ img.alt }}{% endif %}"
31+
loading="lazy">
3032
{% endif %}
3133
{% endfor %}
3234
{% if include.caption %}

_includes/search/google-search-scripts.html

Lines changed: 0 additions & 30 deletions
This file was deleted.

_includes/search/lunr-search-scripts.html

Lines changed: 0 additions & 10 deletions
This file was deleted.

_pages/archive-layout-with-content.md

Lines changed: 0 additions & 177 deletions
This file was deleted.

0 commit comments

Comments
 (0)