Files
cv-site/data/ui-en.json
T
juanatsap 9636b3659f refactor: Extract all hardcoded content to JSON files
- Move all bilingual text from templates to UI JSON (labels, buttons, modals)
- Move skills summary paragraph to CV JSON with HTML support
- Add new UI sections: navigation, viewControls, sections, footer, portfolio,
  pdfModal, shortcutsModal, infoModal, widgets
- Update Go structs to match expanded JSON structure
- Add template.HTML type for CV.SkillsSummary field
- Add JSON content validation test (70-json-content-validation.test.mjs)

Templates now contain only structural logic (CSS classes, HTML attributes)
while all user-visible text loads from JSON files for proper i18n support.
2025-11-30 10:13:37 +00:00

205 lines
5.6 KiB
JSON

{
"navigation": {
"cvSections": "CV Sections",
"training": "Training",
"skills": "Skills",
"experience": "Experience",
"awards": "Awards",
"projects": "Personal / Freelance Projects",
"courses": "Courses",
"languages": "Languages",
"references": "References",
"other": "Other",
"quickActions": "Quick Actions",
"collapseAll": "Collapse All",
"expandAll": "Expand All",
"zoom": "Zoom",
"viewControls": "View Controls",
"actions": "Actions"
},
"viewControls": {
"length": "Length",
"icons": "Icons",
"view": "View"
},
"sections": {
"technicalSkills": "Technical Skills",
"moreSkills": "More Skills",
"yearsOfExperience": "years of experience",
"drivingLicense": "Driving License type",
"obtainedFrom": "obtained from the",
"currentBadge": "CURRENT",
"expiredBadge": "EXPIRED",
"present": "now",
"technologies": "Technologies:",
"maintainedBy": "MAINTAINED BY"
},
"footer": {
"viewOnGithub": "View this project on GitHub",
"lastUpdated": "Last updated"
},
"portfolio": {
"seeAllProjects": "See all projects on my",
"domestikaPortfolio": "Domestika portfolio"
},
"pdfModal": {
"title": "Download PDF",
"subtitle": "Choose your preferred format",
"preparingPdf": "Preparing PDF...",
"pleaseWait": "Please wait while we generate your CV",
"close": "Close",
"downloadButton": "Download PDF",
"shortCv": {
"title": "Short CV (4 pages)",
"pages": "4 Pages",
"description": "Essential info",
"ariaLabel": "Short CV - 4 pages, essential information"
},
"defaultCv": {
"title": "Default CV (5 pages)",
"pages": "5 Pages",
"description": "Short with skills - Recommended",
"ariaLabel": "Default CV - 5 pages with skills (Recommended)"
},
"extendedCv": {
"title": "Extended CV (9 pages)",
"pages": "9 Pages",
"description": "All details",
"ariaLabel": "Extended CV - 9 pages, full version"
}
},
"shortcutsModal": {
"title": "Keyboard Shortcuts",
"subtitle": "Learn the Shortcuts",
"description": "Use these keyboard shortcuts to navigate and control the CV more efficiently.",
"close": "Close",
"sections": {
"zoom": {
"title": "Zoom Control",
"zoomIn": {
"key": "Ctrl / Cmd + Plus",
"description": "Zoom in (+10%)"
},
"zoomOut": {
"key": "Ctrl / Cmd + Minus",
"description": "Zoom out (-10%)"
},
"zoomReset": {
"key": "Ctrl / Cmd + 0",
"description": "Reset zoom to 100%"
}
},
"viewControls": {
"title": "View Controls",
"toggleLength": {
"key": "Tab to Length",
"description": "Toggle CV length (Short/Long)"
},
"toggleIcons": {
"key": "Tab to Icons",
"description": "Show/hide company icons"
},
"toggleTheme": {
"key": "Tab to View",
"description": "Switch theme (Default/Clean)"
}
},
"navigation": {
"title": "Navigation",
"expandAll": {
"key": "Menu → Expand All",
"description": "Expand all CV sections"
},
"collapseAll": {
"key": "Menu → Collapse All",
"description": "Collapse all CV sections"
},
"scrollToTop": {
"key": "Click ↑ Button",
"description": "Scroll back to top"
}
},
"actions": {
"title": "Actions",
"print": {
"key": "Ctrl / Cmd + P",
"description": "Print or save as PDF"
},
"closeModal": {
"key": "ESC",
"description": "Close any open modal"
},
"showHelp": {
"key": "?",
"description": "Show this shortcuts help"
}
},
"browser": {
"title": "Browser Defaults",
"tab": {
"key": "Tab",
"description": "Navigate between controls"
},
"enter": {
"key": "Enter / Space",
"description": "Activate focused control"
}
}
}
},
"infoModal": {
"title": "About this CV",
"description": "This interactive CV was built by myself with <strong>Go + HTMX</strong>, showcasing modern hypermedia architecture without heavy JavaScript frameworks.",
"techStack": {
"goHono": "Go + Hono",
"htmx": "HTMX",
"html5": "Semantic HTML5",
"css3": "Pure CSS3"
},
"viewSource": "View Project in Github",
"viewSourceSubtext": "Want to know how it's built?"
},
"widgets": {
"backToTop": {
"ariaLabel": "Back to top",
"tooltip": "Back to top"
},
"info": {
"ariaLabel": "Information",
"tooltip": "Information"
},
"download": {
"ariaLabel": "Download as PDF",
"tooltip": "Download as PDF"
},
"print": {
"ariaLabel": "Print Friendly",
"tooltip": "Print Friendly"
},
"shortcuts": {
"ariaLabel": "Keyboard shortcuts",
"tooltip": "Keyboard shortcuts (?)"
},
"zoomToggle": {
"ariaLabel": "Toggle zoom control",
"tooltip": "Zoom control"
},
"zoomControl": {
"groupLabel": "Zoom control",
"closeLabel": "Close zoom control",
"closeTitle": "Close",
"sliderLabel": "Adjust CV zoom level",
"resetLabel": "Reset zoom to 100%",
"resetTitle": "Reset"
},
"pdfToast": {
"title": "Preparing PDF",
"closeLabel": "Close notification"
},
"actionButtons": {
"downloadPdf": "Download as PDF",
"printFriendly": "Print Friendly"
}
}
}