feat: add Projects section between Courses and Awards

Added new Projects section with two initial projects:
- Somos Una Ola - Beach cleaning initiative website (Node.js/Express/HTMX)
- Herrumbre Vivo Arte - Artist portfolio for recycled art

Changes:
- Added projects data to cv-en.json and cv-es.json
- Updated Project struct in models/cv.go with all required fields
- Added Projects section CSS matching Awards/Courses styling (80×80px icons)
- Added Projects template with icons, current badges, and Domestika link
- Reordered sections: Courses → Projects → Awards (as requested)

Features:
- Clickable project titles linking to websites
- Current badge for ongoing projects
- Period and location display
- Short descriptions (always visible)
- Responsibilities list (long version only)
- Technologies list (long version only)
- Footer with link to Domestika portfolio
This commit is contained in:
juanatsap
2025-11-08 10:52:06 +00:00
parent 229769f288
commit fa4996709d
5 changed files with 274 additions and 42 deletions
+30
View File
@@ -702,6 +702,36 @@
]
}
],
"projects": [
{
"title": "Somos Una Ola - Beach Cleaning Initiative",
"url": "https://somosunaola.org",
"location": "La Palma, Canary Islands",
"startDate": "2023-07",
"current": true,
"technologies": ["Node.js", "Express.js", "HTMX"],
"shortDescription": "Volunteer project promoting beach cleaning on La Palma island. Created their website to publish completed cleanings and schedule future events.",
"responsibilities": [
"Designed and developed full-stack website using Node.js Express and HTMX",
"Implemented event publishing system for completed and upcoming beach cleanings",
"Supported environmental initiative that has completed 18 cleanings across 12 beaches"
]
},
{
"title": "Herrumbre Vivo Arte - Artist Portfolio Website",
"url": "https://herrumbrevivoarte.com",
"location": "Fuencaliente, La Palma",
"startDate": "2024",
"current": true,
"technologies": ["Web Development", "Portfolio Design"],
"shortDescription": "Portfolio website for Gustavo Díaz, artisan who transforms recycled materials into sculptures. Promotes environmental art and sustainable creativity.",
"responsibilities": [
"Created online presence for recycled art project focused on sustainability",
"Showcased sculptures made from metal, plastic, glass, and wood waste",
"Highlighted environmental workshops and educational mission aligned with Sustainable Development Goals"
]
}
],
"references": [
{
"title": "Recommendations Letter from TwenTIC",
+30
View File
@@ -734,6 +734,36 @@
]
}
],
"projects": [
{
"title": "Somos Una Ola - Iniciativa de Limpieza de Playas",
"url": "https://somosunaola.org",
"location": "La Palma, Islas Canarias",
"startDate": "2023-07",
"current": true,
"technologies": ["Node.js", "Express.js", "HTMX"],
"shortDescription": "Proyecto de voluntariado que promueve la limpieza de playas en la isla de La Palma. Creación de su sitio web para publicar limpiezas realizadas y programar eventos futuros.",
"responsibilities": [
"Diseñé y desarrollé sitio web full-stack usando Node.js Express y HTMX",
"Implementé sistema de publicación de eventos para limpiezas realizadas y futuras",
"Apoyé iniciativa ambiental que ha completado 18 limpiezas en 12 playas diferentes"
]
},
{
"title": "Herrumbre Vivo Arte - Sitio Web Portfolio de Artista",
"url": "https://herrumbrevivoarte.com",
"location": "Fuencaliente, La Palma",
"startDate": "2024",
"current": true,
"technologies": ["Desarrollo Web", "Diseño de Portfolio"],
"shortDescription": "Sitio web portfolio para Gustavo Díaz, artesano que transforma materiales reciclados en esculturas. Promueve arte ambiental y creatividad sostenible.",
"responsibilities": [
"Creé presencia online para proyecto de arte reciclado enfocado en sostenibilidad",
"Mostré esculturas hechas de desechos metálicos, plásticos, vidrio y madera",
"Destaqué talleres ambientales y misión educativa alineada con Objetivos de Desarrollo Sostenible"
]
}
],
"references": [
{
"title": "Cartas de recomendación de TwenTiC",