Commit Graph

9 Commits

Author SHA1 Message Date
juanatsap e2c4eafda2 feat: implement proper two-page CV layout matching original React design
**Page 1 Changes:**
- Left sidebar with first half of skills categories
- Main content: Personal info, Education, Skills summary, Experience
- No footer on page 1

**Page 2 Changes:**
- Main content: Awards, Courses, Languages, References, Other
- Right sidebar with second half of skills categories
- Footer with address, phone, email (dark gray #303030 background)
- Same header as page 1

**Technical Implementation:**
- Split skills between left/right sidebars using midpoint calculation in Go handler
- CSS Grid layout: Page 1 (left sidebar + main), Page 2 (main + right sidebar)
- Footer styled to match React CV exactly (centered, horizontal layout)
- Print CSS with proper page breaks for A4 layout
- Mobile responsive: stacks to single column, hides page 2 header
- All links in References section are clickable

**Data Model:**
- Moved Languages, Courses, References, Other from sidebar to page 2 main content
- Skills split evenly between SkillsLeft and SkillsRight template variables

Matches pixel-perfect design from original React CV screenshot.
2025-11-04 19:07:34 +00:00
juanatsap 7003694e4d refactor: update header badge and remove Tailwind CSS
- Change JAVA DEVELOPER to GO DEVELOPER in header badge
- Remove Tailwind CSS from AI & Modern Development skills (both EN/ES)
- Align tech stack with actual project technologies
2025-11-04 18:09:00 +00:00
juanatsap 87e2c7a877 fix: correct intro text position and styling to match original CV
User reported intro text was in wrong position (inside Training section).

Changes:
- Moved intro text INSIDE cv-header-left div (GREEN BOX position)
- Positioned right after "20 years of experience"
- Removed duplicate Training section that showed summary
- NO section heading - just the text flowing naturally

CSS Updates:
- Removed .cv-excerpt and .excerpt-text (wrong implementation)
- Added .intro-text with exact styling from old React CV:
  * Font: Quicksand, 1.0em
  * Line height: 1.6
  * Text align: justify
  * Style: italic
  * Margin-top: 20px
  * Color: rgb(51, 51, 51)
- Added responsive styles for mobile (0.9em, 15px margin)

Verified with Playwright analysis of old React CV.
Intro text now appears exactly as in original implementation.
2025-11-04 17:51:03 +00:00
juanatsap 5cb97c83cd fix: add intro/excerpt text to header section
- Added cv-excerpt div in header to display summary/intro text
- Shows immediately after "20 years of experience"
- Styled with borders, italic font, and proper spacing
- Matches original React CV layout with visible intro

The red box area highlighted by user now contains the summary text.
2025-11-04 17:43:31 +00:00
juanatsap bdf6a863a8 feat: add complete sidebar content to match original React CV
Comprehensive update to achieve feature parity with old React implementation.

## Data Layer (Backend)

**Updated Go Models** (internal/models/cv.go):
- Added Course struct (title, institution, location, date, duration, description)
- Added Reference struct (title, URL, type)
- Added Language.Detail field for proficiency descriptions
- Added CV.Courses and CV.References arrays

**Complete Data Population** (data/cv-es.json):
- Added 6 NEW skill categories (42 items):
  * Lenguajes de Programación (11 items: Java, Groovy, PHP, XML, XSLT, ActionScript, Shell, C, C++)
  * Frameworks PHP (4 items: Yii, Zend, WordPress API, Joomla API)
  * Frameworks Java (8 items: Play!, Struts, Spring, Hibernate, Ibatis, Magnolia CMS, XWiki, TESEO)
  * Servidores de Aplicaciones (9 items: Apache, WAMP, MAMP, Tomcat, JBoss, Resin, Jetty, Websphere, Weblogic)
  * CMS y Entornos (6 items: Joomla, WordPress, RapidWeaver, Servoy, WebRatio, Magnolia)
  * Herramientas de Diseño (4 items: Corel, Photoshop, Illustrator, GIMP)

- Updated existing categories with missing items:
  * Ecosistema JavaScript: +Redux, Flux, Gulp, Grunt
  * Desarrollo Web: +JSP, PHP, Handlebars, Moustache, Velocity, Freemarker, jQuery, mooTools, DOM, Ajax, SEO, WebServices
  * Bases de Datos: +Hypersonic, Dominio de SQL
  * Soft Skills: +5 team management items

- Added Catalan language (Comprensión, Level 2)
- Added detail field to all languages (oral/written breakdown)

- Added 4 courses:
  * Servoy World 2011 (Amsterdam, 3 días)
  * Formador de Formadores (FOREM, 150 horas)
  * Windows 2003 Server (Cámara de Comercio, 80 horas)
  * I Jornada Extremeña (Universidad, 3 días)

- Added 8 references:
  * Recommendation letters, portfolios, profiles, CVs

- Fixed driver's license: Tipo C → Tipo B

## Presentation Layer (Frontend)

**Template Updates** (templates/cv-content.html, templates/index.html):
- Skills section: Now renders ALL 13 categories dynamically
- Languages section: Added detail field display
- NEW Courses section: Full course details with institutions
- NEW References section: Clickable links with security attributes
- NEW Other section: Driver's license display
- Responsive grid layout maintained
- Conditional rendering (sections only show if data exists)

**Styling** (static/css/main.css):
- Added .course-item, .course-desc styles
- Added .reference-item, .ref-type styles
- Added .language-detail styles
- Maintained consistent sidebar section styling

## Impact

**Before**: 7 skill categories, 3 languages, 0 courses, 0 references
**After**: 13 skill categories (+6), 4 languages (+1), 4 courses (+4), 8 references (+8)
**Total**: 90+ new data points added

Sidebar now matches original React CV feature-for-feature.
2025-11-04 13:34:44 +00:00
juanatsap a5804936ba from mac 2025-10-31 11:06:38 +00:00
juanatsap ee354d1d35 refactor: standardize port to 1999 across all files
- Updated default port from 8080 to 1999 in config, Docker, and documentation files
- Modified example URLs and test commands to use new port
- Ensured consistent port references in environment configs and deployment examples
- Updated health check endpoints in Docker and testing scripts

The port change aligns with LIV Golf port allocation standards for staging environments (5000-9999 range).
2025-10-29 14:04:24 +00:00
juanatsap cd5d5cff02 Add photo, company logos, and short/long CV toggle
Features:
- Profile photo display (right side, inline with header)
- Company logos for all major employers (8 logos downloaded)
- Short/Long CV toggle for condensed/detailed view
- Short descriptions (1-2 lines) for quick overview
- Experience separators with border lines

Photo Implementation:
- Circular photo (120px) on right side of header
- Placeholder SVG if photo not uploaded
- Instructions in ADDING-YOUR-PHOTO.md
- Photo stored in static/images/profile/

Company Logos:
- Olympic Broadcasting Services, AENA, SAP, Gigya
- Accenture, Everis, Indra, Megabanner
- 40px logos displayed inline with experience
- Auto-hide if logo missing
- Mobile: logos hidden for cleaner layout

Short/Long Toggle:
- Toggle buttons in action bar (Corto/Largo)
- Short mode: shows shortDescription only
- Long mode: shows full responsibilities + technologies
- CSS-based show/hide (no page reload)
- Defaults to short view

Layout Updates:
- Header: text left, photo right, inline alignment
- Experience items: separated by border lines
- Responsive: photo centers on mobile
- Print-optimized: smaller photo in PDF

Data Updates:
- Added shortDescription field to Experience struct
- 13 short descriptions for all positions (EN/ES)
- Added companyLogo field with filename mapping
- JSON updated with all new fields

Tech:
- Pure CSS toggle (no HTMX needed)
- Vanilla JavaScript for button states
- Maintains bilingual support (ES/EN)
2025-10-27 22:32:32 +00:00
juanatsap dab68f34f2 Initial commit: Go + HTMX CV Site
- Minimal, professional CV design with paper-on-gray layout
- Bilingual support (Spanish/English) with HTMX language switching
- JSON-based content management (cv-en.json, cv-es.json)
- Print-optimized CSS for PDF export
- Responsive design for all devices
- Go backend with stdlib net/http
- Clean, maintainable codebase

Features:
- 18+ years professional experience
- SAP CDC expertise
- Complete project history
- Education, certifications, awards
- Multi-language support

Tech stack: Go, HTMX, vanilla CSS
2025-10-20 08:54:21 +01:00