Files
markusgraf_ch/openspec/project.md
Markus GrafandClaude d36a18d28b feat: initialize Hugo static site with Bootstrap 5.x
Initialize minimal Hugo site structure with Bootstrap 5.3.2 integration for
markusgraf.ch conversion. Implements OpenSpec proposal add-minimal-hugo-site.

Features:
- Hugo project structure with standard directories
- Base layout template (baseof.html) with Bootstrap 5.3.2 via CDN
- Homepage (index.html) and single page (single.html) templates
- Reusable partials: header, footer, navigation
- Responsive Bootstrap grid layout
- Mobile-first design with semantic HTML5
- Valid HTML output with basic accessibility features
- Taxonomies disabled for minimal site (see docs/TAXONOMIES.md)

Documentation:
- IMPLEMENTATION_SUMMARY.md - Complete implementation guide
- docs/TAXONOMIES.md - Guide for re-enabling categories/tags
- static/README.md - Guide for placing static assets

Configuration:
- hugo.toml configured for markusgraf.ch
- .gitignore for Hugo build artifacts

All 24 tasks from OpenSpec proposal completed successfully.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-27 10:25:11 +01:00

66 lines
2.6 KiB
Markdown

# Project Context
## Purpose
Converting the existing static HTML website at markusgraf.ch into a Hugo-based static site. This project maintains the current content while establishing a foundation for future expansion with CV and blog sections.
## Tech Stack
- **Static Site Generator**: Hugo (latest stable version)
- **Templating**: Go templates (Hugo's templating engine)
- **Styling**: Bootstrap (upgrading from current version to latest Bootstrap 5.x)
- **Scripting**: None (no JavaScript/TypeScript at this stage)
- **Deployment**: Static HTML output
- **Version Control**: Git
## Project Conventions
### Code Style
- Use semantic HTML5 elements
- Follow Hugo best practices for template organization
- Use consistent indentation (2 spaces) in HTML and templates
- Keep templates DRY (Don't Repeat Yourself) using partials
- Use descriptive names for partials and layouts
- Comment complex template logic
### Architecture Patterns
- **Hugo Structure**: Follow standard Hugo directory structure
- `/layouts` - Template files (baseof.html, partials, shortcodes)
- `/content` - Markdown content files
- `/static` - Static assets (images, fonts, etc.)
- `/assets` - Files to be processed (SCSS, if needed)
- `/data` - Data files (YAML, JSON, TOML)
- `/config.toml` (or config.yaml) - Site configuration
- **Template Hierarchy**: Use Hugo's template lookup order effectively
- **Partials**: Break down templates into reusable partials (header, footer, nav, etc.)
- **Content Organization**: Use page bundles and sections as appropriate
### Testing Strategy
- No automated testing currently implemented
- Manual testing in browsers for layout and functionality
- Playwright for E2E testing will be introduced in a future phase
### Git Workflow
- **Branching**: Feature branches from `main` (e.g., `feature/convert-homepage`)
- **Commits**: Conventional commits format (feat:, fix:, docs:, refactor:, etc.)
- **PRs**: Required for all changes, squash and merge
- **Branch Protection**: Main branch requires review
## Domain Context
Currently migrating existing markusgraf.ch content to Hugo:
- Existing static HTML pages and content
- Current design and layout using Bootstrap
Future planned additions:
- Curriculum Vitae (CV) page
- Blog section
The migration focuses on preserving current content and functionality while establishing a maintainable Hugo foundation.
## Important Constraints
- Must be performant (Lighthouse score >90)
- Must be accessible (WCAG 2.1 AA compliance)
- Must be responsive (mobile-first design)
- Keep output file size minimal
## External Dependencies
None currently required. Site is fully self-contained static HTML.