chore: archive completed OpenSpec changes
Archive all 6 deployed changes following OpenSpec workflow: - add-minimal-hugo-site → hugo-site spec - add-multilingual-support → internationalization spec - migrate-site-content → content-migration + image-assets specs - add-custom-bootstrap-styling → styling spec - add-cv-page → content-management spec - simple-deployment → deployment spec All changes moved to archive/ with 2025-10-30 date prefix. Created 7 capability specs reflecting deployed functionality. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
+82
@@ -0,0 +1,82 @@
|
||||
## ADDED Requirements
|
||||
|
||||
### Requirement: Content Extraction from Live Site
|
||||
The system SHALL capture all text content, structure, and formatting from the live markusgraf.ch website to migrate into the Hugo project.
|
||||
|
||||
#### Scenario: Extract homepage content from live site
|
||||
- **GIVEN** the live markusgraf.ch website HTML source is provided
|
||||
- **WHEN** the HTML is parsed for content extraction
|
||||
- **THEN** all text content, headings, and structure are captured
|
||||
- **AND** the content is organized by logical sections (bio, intro, projects, etc.)
|
||||
|
||||
#### Scenario: Extract projects and portfolio content
|
||||
- **GIVEN** the live site contains project or portfolio information
|
||||
- **WHEN** projects are identified and extracted
|
||||
- **THEN** each project has complete description captured
|
||||
- **AND** project metadata and structure is documented
|
||||
|
||||
### Requirement: Content Conversion to Hugo Format
|
||||
The system SHALL convert extracted HTML content into Hugo-compatible markdown format while preserving formatting and structure.
|
||||
|
||||
#### Scenario: Convert HTML to markdown
|
||||
- **GIVEN** extracted HTML content from live site
|
||||
- **WHEN** content is converted to markdown
|
||||
- **THEN** all text formatting is preserved (bold, italic, links)
|
||||
- **AND** HTML-specific elements are converted to markdown or Hugo shortcodes
|
||||
- **AND** content follows markdown best practices
|
||||
|
||||
#### Scenario: Add Hugo front matter
|
||||
- **GIVEN** converted markdown content
|
||||
- **WHEN** content files are created
|
||||
- **THEN** appropriate YAML front matter is added (title, description, date)
|
||||
- **AND** front matter variables are correctly configured for templates
|
||||
|
||||
### Requirement: Homepage Content Integration
|
||||
The system SHALL integrate migrated homepage content into content/_index.md, replacing placeholder content.
|
||||
|
||||
#### Scenario: Update homepage with actual content
|
||||
- **GIVEN** converted homepage markdown content
|
||||
- **WHEN** content/_index.md is updated
|
||||
- **THEN** all placeholder text is replaced with actual content
|
||||
- **AND** all sections from live site are present
|
||||
- **AND** content hierarchy and flow matches live site structure
|
||||
|
||||
#### Scenario: Image references in content
|
||||
- **GIVEN** homepage content references images
|
||||
- **WHEN** image references are added to markdown
|
||||
- **THEN** images use Hugo static path conventions (e.g., /images/photo.jpg)
|
||||
- **AND** all image markdown syntax is correct
|
||||
|
||||
### Requirement: Content Structure Parity
|
||||
The system SHALL ensure the Hugo site content structure matches the live markusgraf.ch site organization.
|
||||
|
||||
#### Scenario: Section organization matches live site
|
||||
- **GIVEN** live site has distinct sections
|
||||
- **WHEN** content is organized in Hugo
|
||||
- **THEN** all sections are represented
|
||||
- **AND** section order matches live site
|
||||
- **AND** navigation between sections works correctly
|
||||
|
||||
#### Scenario: Multi-page structure if needed
|
||||
- **GIVEN** live site has multiple pages
|
||||
- **WHEN** pages are created in Hugo
|
||||
- **THEN** each page has corresponding content file
|
||||
- **AND** internal links between pages work
|
||||
- **AND** navigation reflects page structure
|
||||
|
||||
### Requirement: Content Verification
|
||||
The system SHALL verify that migrated content achieves parity with the live site.
|
||||
|
||||
#### Scenario: Content completeness check
|
||||
- **GIVEN** Hugo site is built with migrated content
|
||||
- **WHEN** compared with live markusgraf.ch
|
||||
- **THEN** all text content from live site is present
|
||||
- **AND** no content is missing or truncated
|
||||
- **AND** content meaning and context are preserved
|
||||
|
||||
#### Scenario: Visual structure comparison
|
||||
- **GIVEN** Hugo site is rendered
|
||||
- **WHEN** viewed alongside live site
|
||||
- **THEN** content sections appear in same order
|
||||
- **AND** heading hierarchy matches
|
||||
- **AND** overall content flow is equivalent
|
||||
@@ -0,0 +1,86 @@
|
||||
## ADDED Requirements
|
||||
|
||||
### Requirement: Image Asset Discovery
|
||||
The system SHALL identify and catalog all images from the live markusgraf.ch website for migration.
|
||||
|
||||
#### Scenario: Identify all images on live site
|
||||
- **GIVEN** the live markusgraf.ch website HTML source
|
||||
- **WHEN** images are catalogued from the HTML
|
||||
- **THEN** all image URLs are documented
|
||||
- **AND** image purposes (profile, project, icon, etc.) are identified
|
||||
- **AND** image file formats and sizes are noted
|
||||
|
||||
#### Scenario: Create asset inventory
|
||||
- **GIVEN** identified images from live site
|
||||
- **WHEN** asset inventory is created
|
||||
- **THEN** a complete list of images with URLs exists
|
||||
- **AND** each image is categorized by type/purpose
|
||||
- **AND** inventory documents source URLs for downloading
|
||||
|
||||
### Requirement: Image Download and Organization
|
||||
The system SHALL download images from the live site and organize them in Hugo's static directory following logical grouping principles.
|
||||
|
||||
#### Scenario: Download images from live site
|
||||
- **GIVEN** list of image URLs from inventory
|
||||
- **WHEN** images are downloaded
|
||||
- **THEN** all images are successfully retrieved
|
||||
- **AND** image files are verified for integrity
|
||||
- **AND** no corrupted or failed downloads exist
|
||||
|
||||
#### Scenario: Organize images in static directory
|
||||
- **GIVEN** downloaded images
|
||||
- **WHEN** images are placed in Hugo project
|
||||
- **THEN** images are saved to static/images/ or appropriate subdirectories
|
||||
- **AND** directory structure reflects logical grouping (e.g., static/images/projects/, static/images/profile/)
|
||||
- **AND** filenames are consistent and descriptive
|
||||
|
||||
### Requirement: Image Reference Integration
|
||||
The system SHALL update all image references in content files to use Hugo's static path conventions correctly.
|
||||
|
||||
#### Scenario: Update image paths in content
|
||||
- **GIVEN** images are in Hugo static directory
|
||||
- **WHEN** content files reference images
|
||||
- **THEN** image paths use Hugo static conventions (e.g., /images/photo.jpg)
|
||||
- **AND** all image references use correct relative or absolute paths
|
||||
- **AND** markdown image syntax is properly formatted
|
||||
|
||||
#### Scenario: Verify image links resolve
|
||||
- **GIVEN** Hugo site is built
|
||||
- **WHEN** pages with images are rendered
|
||||
- **THEN** all image references resolve correctly
|
||||
- **AND** no broken image links exist
|
||||
- **AND** no 404 errors occur for image resources
|
||||
|
||||
### Requirement: Image Display Verification
|
||||
The system SHALL ensure all migrated images display correctly in the built Hugo site.
|
||||
|
||||
#### Scenario: Images render correctly
|
||||
- **GIVEN** Hugo site is built and served
|
||||
- **WHEN** pages with images are viewed
|
||||
- **THEN** all images display visually
|
||||
- **AND** image aspect ratios are appropriate
|
||||
- **AND** images load from correct static paths
|
||||
- **AND** no missing or placeholder images appear
|
||||
|
||||
#### Scenario: Image dimensions and quality
|
||||
- **GIVEN** images are displayed on site
|
||||
- **WHEN** comparing to live site
|
||||
- **THEN** image sizes are comparable to originals
|
||||
- **AND** image quality is maintained
|
||||
- **AND** no distortion or stretching occurs
|
||||
|
||||
### Requirement: Image Accessibility
|
||||
The system SHALL ensure all images have appropriate accessibility attributes for screen readers and assistive technologies.
|
||||
|
||||
#### Scenario: Alt text for all images
|
||||
- **GIVEN** images in content files
|
||||
- **WHEN** markdown image syntax is used
|
||||
- **THEN** all images include descriptive alt text
|
||||
- **AND** alt text meaningfully describes image content
|
||||
- **AND** decorative images use empty alt text where appropriate
|
||||
|
||||
#### Scenario: Semantic image usage
|
||||
- **GIVEN** images serve specific purposes
|
||||
- **WHEN** images are integrated into content
|
||||
- **THEN** images are used semantically (figures, illustrations, etc.)
|
||||
- **AND** image context is clear from surrounding content
|
||||
Reference in New Issue
Block a user