Skip to content

Conversation

cmcga1125
Copy link
Contributor

Pull Request Summary
🔄 Refactor: YAML-driven content system with multi-language support
Major Changes:

YAML Data Structure: Split questions/answers into separate YAML files (data/questions-en.yaml, questions-zh.yaml, questions-es.yaml)
Single HTML Template: Consolidated separate language HTML files into one dynamic template
Asset Organization: Moved CSS/JS files to /assets/ folder for better structure
Language Selector: Added dropdown in navigation bar for instant language switching
New Features:

✅ Spanish Language Support: Complete translation with 15 questions across 5 categories
✅ Dynamic Content Loading: JavaScript loads content from YAML based on ?lang= parameter
✅ URL-based Language Switching: /pemm-assessment/?lang=es|zh|en
✅ Docker Development Environment: Local setup with nginx mimicking GitHub Pages
Technical Improvements:

Maintainability: Centralized content management in YAML files
Scalability: Easy to add new languages by creating new YAML files
Code Quality: Single source of truth for HTML structure
Developer Experience: Enhanced local development workflow with Docker
Key Files:

assets/style.css - Enhanced with language selector styling
assets/app.js - YAML loading and language detection
index.html - Single dynamic template
INSTRUCTIONS.md - Comprehensive documentation
README-docker.md - Local development guide
Breaking Changes: None - maintains backward compatibility with legacy /zh/ URLs via redirects.

@cmcga1125
Copy link
Contributor Author

image image image

@cmcga1125
Copy link
Contributor Author

updated to have pagination, for less scrolling
image

@cmcga1125
Copy link
Contributor Author

here's a working demo: https://cmcga1125.github.io/pemm-assessment

@cmcga1125 cmcga1125 changed the title Feat/split data into Feat/split data into yaml files, add pagination Sep 30, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant