|
| 1 | +# CLAUDE.md |
| 2 | + |
| 3 | +This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository. |
| 4 | + |
| 5 | +## Development Commands |
| 6 | + |
| 7 | +**Local Development:** |
| 8 | +```bash |
| 9 | +bundle install # Install Ruby dependencies |
| 10 | +bundle exec jekyll serve # Start local server at http://127.0.0.1:4000 |
| 11 | +``` |
| 12 | + |
| 13 | +**Build:** |
| 14 | +```bash |
| 15 | +bundle exec jekyll build --baseurl "" # Build site to _site directory |
| 16 | +``` |
| 17 | + |
| 18 | +## Architecture Overview |
| 19 | + |
| 20 | +This is a Jekyll-based portfolio website hosted on GitHub Pages. The site showcases projects, blog posts, and includes interactive playground components. |
| 21 | + |
| 22 | +**Key Structure:** |
| 23 | +- `_config.yaml` - Main Jekyll configuration |
| 24 | +- `_data/project_list.yml` - Central project database with metadata, descriptions, and links |
| 25 | +- `_layouts/` - Page templates (default, frontpage, post, etc.) |
| 26 | +- `_includes/` - Reusable components (header, nav, footer, project-list) |
| 27 | +- `_sass/` - Modular SCSS stylesheets imported via `css/styles.scss` |
| 28 | +- `_playground/` - Interactive demo components with their own collection |
| 29 | +- `_posts/` - Blog articles in markdown format |
| 30 | + |
| 31 | +**Frontend Architecture:** |
| 32 | +- Vanilla JavaScript with ES6 modules in `assets/js/` |
| 33 | +- Component-based JS (logo animation, screen loader) |
| 34 | +- SCSS with BEM-style organization |
| 35 | +- Service Worker for offline functionality |
| 36 | +- Progressive Web App features (manifest.json, icons) |
| 37 | + |
| 38 | +**Content Management:** |
| 39 | +- Projects are managed via YAML data file rather than individual markdown files |
| 40 | +- Each project includes metadata (role, year, tags), descriptions, and multiple URL types |
| 41 | +- Collections system used for playground demonstrations |
| 42 | +- Blog posts follow Jekyll's standard `_posts/` structure |
| 43 | + |
| 44 | +**Deployment:** |
| 45 | +- GitHub Actions workflow deploys to GitHub Pages automatically on push to main |
| 46 | +- Ruby 3.1 with Ubuntu 22.04 build environment |
| 47 | +- Site builds with production JEKYLL_ENV |
0 commit comments