[{"data":1,"prerenderedAt":842},["ShallowReactive",2],{"all-projects":3,"collaborations-es":802},[4,96,172,256,336,399,467,545,605,664,729],{"_path":5,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":9,"description":8,"slug":10,"order":11,"category":12,"sector":13,"year":14,"role":15,"status":16,"outstanding":17,"url":18,"image":19,"imageWidth":20,"imageHeight":21,"summary":22,"technologies":23,"body":29,"_type":90,"_id":91,"_source":92,"_file":93,"_stem":94,"_extension":95},"\u002Fes\u002Fprojects\u002Fgelinet","projects",false,"","Gelinet","gelinet",1,"Página Web","Servicios de limpieza","2021","Diseño y desarrollo full-stack","online",true,"https:\u002F\u002Fgelinet.net","\u002Fimages\u002Fprojects\u002Fgelinet-2026.webp",2560,1440,"Web multilingüe para una empresa de limpieza de Cassà de la Selva, ahora en migración a una web estática más rápida.",[24,25,26,27,28],"Laravel","PHP","Bootstrap","HTML","Sass",{"type":30,"children":31,"toc":84},"root",[32,41,47,53,73,79],{"type":33,"tag":34,"props":35,"children":37},"element","h2",{"id":36},"el-reto",[38],{"type":39,"value":40},"text","El reto",{"type":33,"tag":42,"props":43,"children":44},"p",{},[45],{"type":39,"value":46},"Gelinet es una empresa de servicios de limpieza de Cassà de la Selva (Girona) que trabaja para negocios y particulares de toda la comarca. Necesitaba una web donde explicar sus servicios y la zona donde trabaja, y que pudiera mantener ella misma en catalán, castellano e inglés.",{"type":33,"tag":34,"props":48,"children":50},{"id":49},"qué-hice",[51],{"type":39,"value":52},"Qué hice",{"type":33,"tag":54,"props":55,"children":56},"ul",{},[57,63,68],{"type":33,"tag":58,"props":59,"children":60},"li",{},[61],{"type":39,"value":62},"Diseñé y desarrollé la web en 2021 con Laravel, sobre un CMS propio que había creado para mis proyectos de cliente.",{"type":33,"tag":58,"props":64,"children":65},{},[66],{"type":39,"value":67},"Los textos de cada idioma, las secciones y el blog se gestionaban desde un panel de administración, sin depender de mí para cada cambio.",{"type":33,"tag":58,"props":69,"children":70},{},[71],{"type":39,"value":72},"En 2026 la estoy migrando a una web 100% estática con Nuxt y Tailwind, alojada en Cloudflare Pages: sin base de datos ni servidor, y con los formularios enviados con Resend.",{"type":33,"tag":34,"props":74,"children":76},{"id":75},"resultado",[77],{"type":39,"value":78},"Resultado",{"type":33,"tag":42,"props":80,"children":81},{},[82],{"type":39,"value":83},"La web lleva en línea desde 2021 y es la única de esta lista que todavía se puede visitar. La nueva versión estática es más rápida, más segura y prácticamente no tiene coste de mantenimiento.",{"title":8,"searchDepth":85,"depth":85,"links":86},2,[87,88,89],{"id":36,"depth":85,"text":40},{"id":49,"depth":85,"text":52},{"id":75,"depth":85,"text":78},"markdown","content:es:projects:gelinet.md","content","es\u002Fprojects\u002Fgelinet.md","es\u002Fprojects\u002Fgelinet","md",{"_path":97,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":98,"description":8,"slug":99,"order":85,"category":100,"sector":101,"year":102,"role":103,"status":104,"outstanding":7,"url":8,"image":105,"imageWidth":106,"imageHeight":107,"summary":108,"gallery":109,"technologies":115,"body":117,"_type":90,"_id":169,"_source":92,"_file":170,"_stem":171,"_extension":95},"\u002Fes\u002Fprojects\u002Fclica-t","Clica't","clica-t","Aplicación Web","Educación","2016","Desarrollo full-stack","offline","\u002Fimages\u002Fprojects\u002Fclicat-home.webp",1920,1080,"Plataforma educativa para escuelas con exámenes, ejercicios, informes de progreso y comunicación con las familias.",[110],{"src":111,"width":112,"height":113,"alt":114},"\u002Fimages\u002Fprojects\u002Fclicat-deures.webp",1596,730,"Espacio del alumno con los deberes asignados por asignatura",[25,26,27,116],"CSS",{"type":30,"children":118,"toc":164},[119,123,128,132,155,159],{"type":33,"tag":34,"props":120,"children":121},{"id":36},[122],{"type":39,"value":40},{"type":33,"tag":42,"props":124,"children":125},{},[126],{"type":39,"value":127},"Clica't es una plataforma en línea para escuelas, pensada para que el profesorado pueda proponer actividades, evaluar al alumnado y hacer su seguimiento, y para que las familias puedan estar al tanto del progreso de sus hijos.",{"type":33,"tag":34,"props":129,"children":130},{"id":49},[131],{"type":39,"value":52},{"type":33,"tag":54,"props":133,"children":134},{},[135,140,145,150],{"type":33,"tag":58,"props":136,"children":137},{},[138],{"type":39,"value":139},"Empecé a desarrollarla hacia 2016 y fui añadiendo módulos para tres perfiles: profesorado, alumnado y familias, cada uno con su espacio y sus permisos.",{"type":33,"tag":58,"props":141,"children":142},{},[143],{"type":39,"value":144},"El profesorado puede crear exámenes, listas de problemas y cuadernos de ejercicios, y organizar al alumnado en grupos.",{"type":33,"tag":58,"props":146,"children":147},{},[148],{"type":39,"value":149},"Hay informes de progreso y de deberes, con exportación a Excel y PDF.",{"type":33,"tag":58,"props":151,"children":152},{},[153],{"type":39,"value":154},"Las familias tienen su propio acceso, con informes y un chat con el profesorado.",{"type":33,"tag":34,"props":156,"children":157},{"id":75},[158],{"type":39,"value":78},{"type":33,"tag":42,"props":160,"children":161},{},[162],{"type":39,"value":163},"La plataforma se usó en las escuelas durante varios cursos. Actualmente ya no está en línea, pero fue el proyecto en el que más aprendí sobre aplicaciones con muchos usuarios y roles distintos.",{"title":8,"searchDepth":85,"depth":85,"links":165},[166,167,168],{"id":36,"depth":85,"text":40},{"id":49,"depth":85,"text":52},{"id":75,"depth":85,"text":78},"content:es:projects:clica-t.md","es\u002Fprojects\u002Fclica-t.md","es\u002Fprojects\u002Fclica-t",{"_path":173,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":174,"description":8,"slug":175,"order":176,"category":100,"sector":177,"year":178,"role":103,"status":16,"outstanding":17,"url":179,"image":180,"imageWidth":20,"imageHeight":21,"summary":181,"gallery":182,"technologies":189,"body":196,"_type":90,"_id":253,"_source":92,"_file":254,"_stem":255,"_extension":95},"\u002Fes\u002Fprojects\u002Fedicitnet","EdiCitNet","edicitnet",3,"Investigación · Medio ambiente","2020–2024","https:\u002F\u002Fediblecitiesnetwork.com","\u002Fimages\u002Fprojects\u002Fedicitnet-2x.webp","Plataforma internacional del proyecto europeo EdiCitNet sobre ciudades comestibles, desarrollada con el ICRA.",[183,186],{"src":184,"width":20,"height":21,"alt":185},"\u002Fimages\u002Fprojects\u002Fedicitnet-cataleg.webp","Catálogo de iniciativas y soluciones con el mapa interactivo",{"src":187,"width":20,"height":21,"alt":188},"\u002Fimages\u002Fprojects\u002Fedicitnet-esdeveniments.webp","Agenda de eventos con filtros y mapa",[190,191,192,193,194,195],"Vue","Node.js","Express","MySQL","Leaflet","Vue I18n",{"type":30,"children":197,"toc":248},[198,202,207,211,239,243],{"type":33,"tag":34,"props":199,"children":200},{"id":36},[201],{"type":39,"value":40},{"type":33,"tag":42,"props":203,"children":204},{},[205],{"type":39,"value":206},"EdiCitNet (Edible Cities Network) es un proyecto europeo Horizon 2020 sobre ciudades comestibles: huertos urbanos, cubiertas verdes productivas y otras iniciativas que integran la producción de alimentos en la ciudad. El proyecto necesitaba una plataforma en línea donde ciudades, entidades e investigadores pudieran compartir estas soluciones y aprender unos de otros.",{"type":33,"tag":34,"props":208,"children":209},{"id":49},[210],{"type":39,"value":52},{"type":33,"tag":54,"props":212,"children":213},{},[214,219,224,229,234],{"type":33,"tag":58,"props":215,"children":216},{},[217],{"type":39,"value":218},"Como freelance, trabajé con el equipo de desarrollo del ICRA (Instituto Catalán de Investigación del Agua) en dos versiones de la plataforma, entre 2020 y 2024.",{"type":33,"tag":58,"props":220,"children":221},{},[222],{"type":39,"value":223},"La primera versión se hizo con Vue 2 y Chart.js. La segunda es una reescritura completa con Vue 3 y Vite.",{"type":33,"tag":58,"props":225,"children":226},{},[227],{"type":39,"value":228},"Desarrollé tanto el frontend como la API, con Node.js, Express y MySQL. La API incluye autenticación, subida de imágenes y envío de correos.",{"type":33,"tag":58,"props":230,"children":231},{},[232],{"type":39,"value":233},"La plataforma tiene un catálogo de iniciativas y soluciones con mapa interactivo (Leaflet), perfiles, noticias y eventos, recursos, comunidad, preguntas y respuestas y cuestionarios de evaluación.",{"type":33,"tag":58,"props":235,"children":236},{},[237],{"type":39,"value":238},"Toda la interfaz es multilingüe.",{"type":33,"tag":34,"props":240,"children":241},{"id":75},[242],{"type":39,"value":78},{"type":33,"tag":42,"props":244,"children":245},{},[246],{"type":39,"value":247},"La plataforma sigue activa y da servicio a la red internacional del proyecto. Me permitió colaborar con un equipo de desarrollo distribuido de un centro de investigación.",{"title":8,"searchDepth":85,"depth":85,"links":249},[250,251,252],{"id":36,"depth":85,"text":40},{"id":49,"depth":85,"text":52},{"id":75,"depth":85,"text":78},"content:es:projects:edicitnet.md","es\u002Fprojects\u002Fedicitnet.md","es\u002Fprojects\u002Fedicitnet",{"_path":257,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":258,"description":8,"slug":259,"order":260,"category":100,"sector":261,"year":262,"role":103,"status":16,"outstanding":17,"url":263,"image":264,"imageWidth":20,"imageHeight":21,"summary":265,"gallery":266,"technologies":273,"body":276,"_type":90,"_id":333,"_source":92,"_file":334,"_stem":335,"_extension":95},"\u002Fes\u002Fprojects\u002Fnat4wat","Nat4Wat","nat4wat",4,"Investigación · Agua","2023–2025","https:\u002F\u002Fnat4wat.icra.cat","\u002Fimages\u002Fprojects\u002Fnat4wat-2x.webp","Herramienta web del ICRA para elegir soluciones basadas en la naturaleza para tratar, almacenar y reutilizar el agua.",[267,270],{"src":268,"width":20,"height":21,"alt":269},"\u002Fimages\u002Fprojects\u002Fnat4wat-solucions.webp","Catálogo de soluciones basadas en la naturaleza",{"src":271,"width":20,"height":21,"alt":272},"\u002Fimages\u002Fprojects\u002Fnat4wat-casos.webp","Listado de casos de mercado con filtros",[274,190,275,191],"Nuxt 3","Pinia",{"type":30,"children":277,"toc":328},[278,282,287,291,319,323],{"type":33,"tag":34,"props":279,"children":280},{"id":36},[281],{"type":39,"value":40},{"type":33,"tag":42,"props":283,"children":284},{},[285],{"type":39,"value":286},"Nat4Wat es la herramienta del proyecto europeo MULTISOURCE, financiado por el programa Horizon 2020, para ayudar a ayuntamientos, empresas y técnicos a elegir soluciones basadas en la naturaleza (como los humedales construidos) para tratar, almacenar y reutilizar el agua. Había que convertir los modelos y los datos del equipo de investigación del ICRA en una herramienta que se pudiera usar sin ser especialista.",{"type":33,"tag":34,"props":288,"children":289},{"id":49},[290],{"type":39,"value":52},{"type":33,"tag":54,"props":292,"children":293},{},[294,299,304,309,314],{"type":33,"tag":58,"props":295,"children":296},{},[297],{"type":39,"value":298},"Como freelance, entre 2023 y 2025 desarrollé el frontend con Nuxt 3 y Pinia y contribuí a la API con Node.js, junto con el equipo del ICRA.",{"type":33,"tag":58,"props":300,"children":301},{},[302],{"type":39,"value":303},"La parte central es «Find your solution», un asistente por pasos: el usuario define su escenario (agua, contaminantes, superficie, prioridades) y la herramienta le propone las soluciones más adecuadas.",{"type":33,"tag":58,"props":305,"children":306},{},[307],{"type":39,"value":308},"Las soluciones se comparan con un análisis multicriterio con gráficos, y se puede generar un informe.",{"type":33,"tag":58,"props":310,"children":311},{},[312],{"type":39,"value":313},"También hay un catálogo de soluciones, publicaciones científicas y casos de mercado, con un circuito para aceptarlos y publicarlos.",{"type":33,"tag":58,"props":315,"children":316},{},[317],{"type":39,"value":318},"Completan la herramienta los perfiles de usuario, los escenarios guardados, el servicio de ayuda, las guías y las preguntas frecuentes, todo adaptado a móviles.",{"type":33,"tag":34,"props":320,"children":321},{"id":75},[322],{"type":39,"value":78},{"type":33,"tag":42,"props":324,"children":325},{},[326],{"type":39,"value":327},"La herramienta es pública y sigue activa en nat4wat.icra.cat.",{"title":8,"searchDepth":85,"depth":85,"links":329},[330,331,332],{"id":36,"depth":85,"text":40},{"id":49,"depth":85,"text":52},{"id":75,"depth":85,"text":78},"content:es:projects:nat4wat.md","es\u002Fprojects\u002Fnat4wat.md","es\u002Fprojects\u002Fnat4wat",{"_path":337,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":338,"description":8,"slug":339,"order":340,"category":100,"sector":341,"year":342,"role":15,"status":343,"outstanding":7,"url":8,"image":344,"imageWidth":20,"imageHeight":21,"summary":345,"technologies":346,"body":349,"_type":90,"_id":396,"_source":92,"_file":397,"_stem":398,"_extension":95},"\u002Fes\u002Fprojects\u002Fenfaixapp","EnfaixApp","enfaixapp",5,"Cultura popular · Castells","2022","private","\u002Fimages\u002Fprojects\u002Fenfaixapp-2x.webp","Aplicación para organizar una colla castellera: castellers, ensayos, asistencia y diseño de castells posición por posición.",[24,25,190,347,348],"Vuex","Tailwind CSS",{"type":30,"children":350,"toc":392},[351,355,360,364],{"type":33,"tag":34,"props":352,"children":353},{"id":36},[354],{"type":39,"value":40},{"type":33,"tag":42,"props":356,"children":357},{},[358],{"type":39,"value":359},"Organizar una colla castellera implica saber quién vendrá a cada ensayo y actuación, y decidir quién ocupa cada posición de la pinya y del tronco. Hacía falta una herramienta que reuniera toda esta información en un solo lugar.",{"type":33,"tag":34,"props":361,"children":362},{"id":49},[363],{"type":39,"value":52},{"type":33,"tag":54,"props":365,"children":366},{},[367,372,377,382,387],{"type":33,"tag":58,"props":368,"children":369},{},[370],{"type":39,"value":371},"En 2022 diseñé y desarrollé EnfaixApp, una aplicación web con Laravel, Vue y Tailwind CSS.",{"type":33,"tag":58,"props":373,"children":374},{},[375],{"type":39,"value":376},"Cada casteller tiene su ficha, con las posiciones en las que puede hacer castells.",{"type":33,"tag":58,"props":378,"children":379},{},[380],{"type":39,"value":381},"Hay un calendario de ensayos y actuaciones donde cada uno confirma si asistirá, y los responsables ven la asistencia al momento.",{"type":33,"tag":58,"props":383,"children":384},{},[385],{"type":39,"value":386},"La parte central es un diseñador de castells con plantillas: en él se asigna cada casteller a su posición y se puede ver el castell entero o la posición de cada persona.",{"type":33,"tag":58,"props":388,"children":389},{},[390],{"type":39,"value":391},"También tiene formularios con respuestas, notificaciones, un registro de actividad reciente y roles con permisos distintos.",{"title":8,"searchDepth":85,"depth":85,"links":393},[394,395],{"id":36,"depth":85,"text":40},{"id":49,"depth":85,"text":52},"content:es:projects:enfaixapp.md","es\u002Fprojects\u002Fenfaixapp.md","es\u002Fprojects\u002Fenfaixapp",{"_path":400,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":401,"description":8,"slug":402,"order":403,"category":100,"sector":177,"year":404,"role":15,"status":343,"outstanding":7,"url":8,"image":405,"imageWidth":20,"imageHeight":21,"summary":406,"gallery":407,"technologies":411,"body":412,"_type":90,"_id":464,"_source":92,"_file":465,"_stem":466,"_extension":95},"\u002Fes\u002Fprojects\u002Ficra-workshop","Herramienta para talleres participativos","icra-workshop",6,"2023","\u002Fimages\u002Fprojects\u002Ficra-workshop-2x.webp","Herramienta interactiva del ICRA para recoger votos en talleres y priorizar beneficios, inconvenientes e indicadores.",[408],{"src":409,"width":20,"height":21,"alt":410},"\u002Fimages\u002Fprojects\u002Ficra-workshop-top10.webp","Ranking de los 10 aspectos más votados durante un taller (datos de prueba)",[274,190,275,348],{"type":30,"children":413,"toc":459},[414,418,423,427,450,454],{"type":33,"tag":34,"props":415,"children":416},{"id":36},[417],{"type":39,"value":40},{"type":33,"tag":42,"props":419,"children":420},{},[421],{"type":39,"value":422},"En los talleres participativos del ICRA, los asistentes valoran los beneficios y los inconvenientes de distintas soluciones para la ciudad. Hacía falta una herramienta para introducir los votos en directo y ver rápidamente qué aspectos eran prioritarios y con qué indicadores se podían medir.",{"type":33,"tag":34,"props":424,"children":425},{"id":49},[426],{"type":39,"value":52},{"type":33,"tag":54,"props":428,"children":429},{},[430,435,440,445],{"type":33,"tag":58,"props":431,"children":432},{},[433],{"type":39,"value":434},"Fue un encargo puntual: desarrollé una aplicación web con Nuxt 3, Pinia y Tailwind CSS.",{"type":33,"tag":58,"props":436,"children":437},{},[438],{"type":39,"value":439},"Los beneficios se organizan en ambientales y socioeconómicos, y los inconvenientes van aparte. Para cada uno se introduce el número de votos, y también se pueden añadir campos personalizados durante el taller.",{"type":33,"tag":58,"props":441,"children":442},{},[443],{"type":39,"value":444},"Con un clic, la herramienta calcula el ranking de los 10 aspectos más votados y muestra sus indicadores relacionados con gráficos.",{"type":33,"tag":58,"props":446,"children":447},{},[448],{"type":39,"value":449},"Los indicadores y sus relaciones se cargan desde archivos CSV preparados por el equipo de investigación, y se pueden actualizar sin tocar el código.",{"type":33,"tag":34,"props":451,"children":452},{"id":75},[453],{"type":39,"value":78},{"type":33,"tag":42,"props":455,"children":456},{},[457],{"type":39,"value":458},"Era una herramienta privada, pensada para el equipo del ICRA, que se fue ajustando con el feedback de los talleres.",{"title":8,"searchDepth":85,"depth":85,"links":460},[461,462,463],{"id":36,"depth":85,"text":40},{"id":49,"depth":85,"text":52},{"id":75,"depth":85,"text":78},"content:es:projects:icra-workshop.md","es\u002Fprojects\u002Ficra-workshop.md","es\u002Fprojects\u002Ficra-workshop",{"_path":468,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":469,"description":8,"slug":470,"order":471,"category":12,"sector":472,"year":473,"role":15,"status":16,"outstanding":7,"url":474,"image":475,"imageWidth":476,"imageHeight":477,"summary":478,"gallery":479,"technologies":489,"body":490,"_type":90,"_id":542,"_source":92,"_file":543,"_stem":544,"_extension":95},"\u002Fes\u002Fprojects\u002Fhostal-bartis","Hostal Bartis","hostal-bartis",7,"Turismo","2020","https:\u002F\u002Fhostalbartis.com","\u002Fimages\u002Fprojects\u002Fhostal-bartis-home.webp",3578,1882,"Web para un hostal familiar para mostrar las habitaciones y los servicios y recibir solicitudes de reserva.",[480,483,486],{"src":481,"width":20,"height":21,"alt":482},"\u002Fimages\u002Fprojects\u002Fhostal-bartis-habitacions.webp","Página de habitaciones",{"src":484,"width":20,"height":21,"alt":485},"\u002Fimages\u002Fprojects\u002Fhostal-bartis-doble.webp","Ficha de la habitación doble con galería de fotos",{"src":487,"width":20,"height":21,"alt":488},"\u002Fimages\u002Fprojects\u002Fhostal-bartis-historia.webp","Página de historia del hostal",[24,25,26,27,116],{"type":30,"children":491,"toc":537},[492,496,501,505,528,532],{"type":33,"tag":34,"props":493,"children":494},{"id":36},[495],{"type":39,"value":40},{"type":33,"tag":42,"props":497,"children":498},{},[499],{"type":39,"value":500},"El Hostal Bartis, un negocio familiar de Figueres fundado en 1909, necesitaba una web que transmitiera el ambiente de la casa, mostrara las habitaciones y los servicios, y le permitiera recibir solicitudes de reserva directamente, sin depender solo de las plataformas de reservas.",{"type":33,"tag":34,"props":502,"children":503},{"id":49},[504],{"type":39,"value":52},{"type":33,"tag":54,"props":506,"children":507},{},[508,513,518,523],{"type":33,"tag":58,"props":509,"children":510},{},[511],{"type":39,"value":512},"Diseñé y desarrollé la web con Laravel y Bootstrap, adaptada a móviles.",{"type":33,"tag":58,"props":514,"children":515},{},[516],{"type":39,"value":517},"La monté sobre mi CMS propio para que los propietarios pudieran actualizar textos, fotos y habitaciones desde un panel.",{"type":33,"tag":58,"props":519,"children":520},{},[521],{"type":39,"value":522},"Los contenidos estaban en catalán, castellano e inglés, pensando en el visitante extranjero.",{"type":33,"tag":58,"props":524,"children":525},{},[526],{"type":39,"value":527},"Añadí un formulario de contacto y de reserva.",{"type":33,"tag":34,"props":529,"children":530},{"id":75},[531],{"type":39,"value":78},{"type":33,"tag":42,"props":533,"children":534},{},[535],{"type":39,"value":536},"La web está en línea desde 2020, y desde entonces los propietarios gestionan su contenido de forma autónoma.",{"title":8,"searchDepth":85,"depth":85,"links":538},[539,540,541],{"id":36,"depth":85,"text":40},{"id":49,"depth":85,"text":52},{"id":75,"depth":85,"text":78},"content:es:projects:hostal-bartis.md","es\u002Fprojects\u002Fhostal-bartis.md","es\u002Fprojects\u002Fhostal-bartis",{"_path":546,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":547,"description":8,"slug":548,"order":549,"category":12,"sector":550,"year":551,"role":15,"status":104,"outstanding":7,"url":8,"image":552,"imageWidth":20,"imageHeight":21,"summary":553,"technologies":554,"body":555,"_type":90,"_id":602,"_source":92,"_file":603,"_stem":604,"_extension":95},"\u002Fes\u002Fprojects\u002Fmerce-paytuvi","Mercè Paytuví","merce-paytuvi",8,"Artesanía textil","2019","\u002Fimages\u002Fprojects\u002Fmerce-paytuvi-2x.webp","Web y blog para una artesana textil de Mont-ras, con dos versiones entre 2019 y 2023.",[24,25,26,27,116],{"type":30,"children":556,"toc":597},[557,561,566,570,588,592],{"type":33,"tag":34,"props":558,"children":559},{"id":36},[560],{"type":39,"value":40},{"type":33,"tag":42,"props":562,"children":563},{},[564],{"type":39,"value":565},"Mercè Paytuví es una artesana textil de Mont-ras que quería mostrar su obra y explicar su proceso de trabajo, y publicar novedades sin tener que pedir ayuda cada vez.",{"type":33,"tag":34,"props":567,"children":568},{"id":49},[569],{"type":39,"value":52},{"type":33,"tag":54,"props":571,"children":572},{},[573,578,583],{"type":33,"tag":58,"props":574,"children":575},{},[576],{"type":39,"value":577},"En 2019 hice la primera versión de la web con Laravel, en catalán e inglés. Fue uno de los primeros proyectos en los que usé mi CMS propio.",{"type":33,"tag":58,"props":579,"children":580},{},[581],{"type":39,"value":582},"Entre 2022 y 2023 la rehice con un diseño nuevo con Bootstrap 5, y añadí un blog con categorías y el castellano.",{"type":33,"tag":58,"props":584,"children":585},{},[586],{"type":39,"value":587},"Ella misma podía actualizar textos, imágenes y entradas del blog desde el panel.",{"type":33,"tag":34,"props":589,"children":590},{"id":75},[591],{"type":39,"value":78},{"type":33,"tag":42,"props":593,"children":594},{},[595],{"type":39,"value":596},"Fue una colaboración de varios años que acompañó la evolución de su proyecto. Actualmente la web ya no está en línea.",{"title":8,"searchDepth":85,"depth":85,"links":598},[599,600,601],{"id":36,"depth":85,"text":40},{"id":49,"depth":85,"text":52},{"id":75,"depth":85,"text":78},"content:es:projects:merce-paytuvi.md","es\u002Fprojects\u002Fmerce-paytuvi.md","es\u002Fprojects\u002Fmerce-paytuvi",{"_path":606,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":607,"description":8,"slug":608,"order":609,"category":12,"sector":610,"year":14,"role":15,"status":104,"outstanding":7,"url":8,"image":611,"imageWidth":20,"imageHeight":21,"summary":612,"technologies":613,"body":614,"_type":90,"_id":661,"_source":92,"_file":662,"_stem":663,"_extension":95},"\u002Fes\u002Fprojects\u002Fintegral","Integral","integral",9,"Servicios a empresas","\u002Fimages\u002Fprojects\u002Fintegral-2x.webp","Web corporativa multilingüe para una empresa de servicios de Banyoles, gestionable desde un panel propio.",[24,25,26,116,28],{"type":30,"children":615,"toc":656},[616,620,625,629,647,651],{"type":33,"tag":34,"props":617,"children":618},{"id":36},[619],{"type":39,"value":40},{"type":33,"tag":42,"props":621,"children":622},{},[623],{"type":39,"value":624},"Integral, una empresa de servicios de Banyoles, necesitaba una web corporativa clara para presentar su actividad en varios idiomas y poder actualizarla internamente.",{"type":33,"tag":34,"props":626,"children":627},{"id":49},[628],{"type":39,"value":52},{"type":33,"tag":54,"props":630,"children":631},{},[632,637,642],{"type":33,"tag":58,"props":633,"children":634},{},[635],{"type":39,"value":636},"Desarrollé la web en 2021 con Laravel, Bootstrap y Sass, sobre mi CMS propio.",{"type":33,"tag":58,"props":638,"children":639},{},[640],{"type":39,"value":641},"Los contenidos estaban en catalán, castellano e inglés, con secciones y plantillas configurables y un blog con categorías.",{"type":33,"tag":58,"props":643,"children":644},{},[645],{"type":39,"value":646},"Añadí un formulario de contacto y la integración con herramientas de analítica.",{"type":33,"tag":34,"props":648,"children":649},{"id":75},[650],{"type":39,"value":78},{"type":33,"tag":42,"props":652,"children":653},{},[654],{"type":39,"value":655},"La empresa tuvo una web que podía gestionar de forma autónoma. Actualmente ya no está en línea.",{"title":8,"searchDepth":85,"depth":85,"links":657},[658,659,660],{"id":36,"depth":85,"text":40},{"id":49,"depth":85,"text":52},{"id":75,"depth":85,"text":78},"content:es:projects:integral.md","es\u002Fprojects\u002Fintegral.md","es\u002Fprojects\u002Fintegral",{"_path":665,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":666,"description":8,"slug":667,"order":668,"category":12,"sector":669,"year":14,"role":15,"status":104,"outstanding":7,"url":8,"image":670,"imageWidth":20,"imageHeight":21,"summary":671,"gallery":672,"technologies":676,"body":679,"_type":90,"_id":726,"_source":92,"_file":727,"_stem":728,"_extension":95},"\u002Fes\u002Fprojects\u002Fdavid-busquets","David Busquets","david-busquets",10,"Música","\u002Fimages\u002Fprojects\u002Fdavidbusquets-2x.webp","Web para un músico con galería, videoclips, lista de reproducción y fechas de conciertos.",[673],{"src":674,"width":20,"height":21,"alt":675},"\u002Fimages\u002Fprojects\u002Fdavidbusquets-albums.webp","Sección de álbumes con enlaces a las plataformas de música",[190,677,678],"Tailwind","Vite",{"type":30,"children":680,"toc":721},[681,685,690,694,712,716],{"type":33,"tag":34,"props":682,"children":683},{"id":36},[684],{"type":39,"value":40},{"type":33,"tag":42,"props":686,"children":687},{},[688],{"type":39,"value":689},"El músico David Busquets quería una web ligera que reuniera toda su actividad: música, vídeos, fotos y próximos conciertos.",{"type":33,"tag":34,"props":691,"children":692},{"id":49},[693],{"type":39,"value":52},{"type":33,"tag":54,"props":695,"children":696},{},[697,702,707],{"type":33,"tag":58,"props":698,"children":699},{},[700],{"type":39,"value":701},"Creé una aplicación de una sola página con Vue 3, Vite y Tailwind CSS, rápida y adaptada a móviles.",{"type":33,"tag":58,"props":703,"children":704},{},[705],{"type":39,"value":706},"Hice componentes específicos: galería de fotos, videoclips, lista de reproducción y un calendario de conciertos.",{"type":33,"tag":58,"props":708,"children":709},{},[710],{"type":39,"value":711},"La web era multilingüe, con cambio de idioma sin recargar la página.",{"type":33,"tag":34,"props":713,"children":714},{"id":75},[715],{"type":39,"value":78},{"type":33,"tag":42,"props":717,"children":718},{},[719],{"type":39,"value":720},"La web reunió en un solo lugar toda la actividad del músico. Actualmente ya no está en línea.",{"title":8,"searchDepth":85,"depth":85,"links":722},[723,724,725],{"id":36,"depth":85,"text":40},{"id":49,"depth":85,"text":52},{"id":75,"depth":85,"text":78},"content:es:projects:david-busquets.md","es\u002Fprojects\u002Fdavid-busquets.md","es\u002Fprojects\u002Fdavid-busquets",{"_path":730,"_dir":6,"_draft":7,"_partial":7,"_locale":8,"title":731,"description":8,"slug":732,"order":733,"category":12,"sector":734,"year":735,"role":15,"status":16,"outstanding":7,"url":736,"image":737,"imageWidth":738,"imageHeight":739,"summary":740,"technologies":741,"body":747,"_type":90,"_id":799,"_source":92,"_file":800,"_stem":801,"_extension":95},"\u002Fes\u002Fprojects\u002Fdavid-crous","David Crous","david-crous",11,"Portafolio personal","2026","https:\u002F\u002Fcrousmayne.com","\u002Fimages\u002Fprojects\u002Fdavidcrous-home.webp",3582,1870,"Esta misma web: estática, en tres idiomas y alojada en Cloudflare Pages.",[274,742,743,744,745,746],"Vue 3","Tailwind 4","Nuxt Content","Nuxt i18n","Figma",{"type":30,"children":748,"toc":794},[749,753,758,762,785,789],{"type":33,"tag":34,"props":750,"children":751},{"id":36},[752],{"type":39,"value":40},{"type":33,"tag":42,"props":754,"children":755},{},[756],{"type":39,"value":757},"Mi web anterior dependía de un CMS con servidor y base de datos. Quería una web más rápida, más sencilla de mantener y que no me costara nada tener en línea.",{"type":33,"tag":34,"props":759,"children":760},{"id":49},[761],{"type":39,"value":52},{"type":33,"tag":54,"props":763,"children":764},{},[765,770,775,780],{"type":33,"tag":58,"props":766,"children":767},{},[768],{"type":39,"value":769},"La rediseñé y desarrollé desde cero con Nuxt 3, Tailwind 4 y Nuxt Content, con todo el contenido en archivos Markdown.",{"type":33,"tag":58,"props":771,"children":772},{},[773],{"type":39,"value":774},"Todas las páginas se generan como HTML estático, en catalán, castellano e inglés.",{"type":33,"tag":58,"props":776,"children":777},{},[778],{"type":39,"value":779},"Está alojada en Cloudflare Pages: se publica automáticamente con cada cambio y mide las visitas sin cookies.",{"type":33,"tag":58,"props":781,"children":782},{},[783],{"type":39,"value":784},"Tiene SEO por idioma (hreflang, sitemap y Schema.org) y un hero con una animación de partículas interactiva.",{"type":33,"tag":34,"props":786,"children":787},{"id":75},[788],{"type":39,"value":78},{"type":33,"tag":42,"props":790,"children":791},{},[792],{"type":39,"value":793},"Es la web que estás viendo ahora.",{"title":8,"searchDepth":85,"depth":85,"links":795},[796,797,798],{"id":36,"depth":85,"text":40},{"id":49,"depth":85,"text":52},{"id":75,"depth":85,"text":78},"content:es:projects:david-crous.md","es\u002Fprojects\u002Fdavid-crous.md","es\u002Fprojects\u002Fdavid-crous",[803,817,829],{"_path":804,"_dir":805,"_draft":7,"_partial":7,"_locale":8,"title":806,"description":8,"order":11,"year":807,"url":808,"summary":809,"body":810,"_type":90,"_id":814,"_source":92,"_file":815,"_stem":816,"_extension":95},"\u002Fes\u002Fcollaborations\u002Fstackstudio","collaborations","Stack Studio","2018–actualidad","https:\u002F\u002Fstackstudio.es","Colaboración continuada con la agencia de Barcelona: desarrollo y mantenimiento de plataformas web y servicios backend, infraestructura en la nube (Azure), pipelines CI\u002FCD y backoffices con Strapi.",{"type":30,"children":811,"toc":812},[],{"title":8,"searchDepth":85,"depth":85,"links":813},[],"content:es:collaborations:stackstudio.md","es\u002Fcollaborations\u002Fstackstudio.md","es\u002Fcollaborations\u002Fstackstudio",{"_path":818,"_dir":805,"_draft":7,"_partial":7,"_locale":8,"title":819,"description":8,"order":85,"year":262,"url":820,"summary":821,"body":822,"_type":90,"_id":826,"_source":92,"_file":827,"_stem":828,"_extension":95},"\u002Fes\u002Fcollaborations\u002Fcoordinadora-de-lleure","Coordinadora de Lleure del Pla de l'Estany","https:\u002F\u002Fcoordinadoradelleure.org","Asesoramiento, mantenimiento del servidor y modificaciones puntuales de su web en WordPress, incluido el sistema de preinscripciones de colonias y campamentos.",{"type":30,"children":823,"toc":824},[],{"title":8,"searchDepth":85,"depth":85,"links":825},[],"content:es:collaborations:coordinadora-de-lleure.md","es\u002Fcollaborations\u002Fcoordinadora-de-lleure.md","es\u002Fcollaborations\u002Fcoordinadora-de-lleure",{"_path":830,"_dir":805,"_draft":7,"_partial":7,"_locale":8,"title":831,"description":8,"order":176,"year":832,"url":833,"summary":834,"body":835,"_type":90,"_id":839,"_source":92,"_file":840,"_stem":841,"_extension":95},"\u002Fes\u002Fcollaborations\u002Funiversitat-de-girona","Universitat de Girona","2018–2020","https:\u002F\u002Fwww.udg.edu","Mantenimiento de las plataformas Alumni y Unigrades (gestión de contenido y resolución de incidencias) y desarrollo de una herramienta para exportar en XML todos los ejercicios de Unigrades.",{"type":30,"children":836,"toc":837},[],{"title":8,"searchDepth":85,"depth":85,"links":838},[],"content:es:collaborations:universitat-de-girona.md","es\u002Fcollaborations\u002Funiversitat-de-girona.md","es\u002Fcollaborations\u002Funiversitat-de-girona",1791373245228]