[{"data":1,"prerenderedAt":850},["ShallowReactive",2],{"project-david-crous":3,"project-nav-david-crous":100},{"_path":4,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"title":8,"description":7,"slug":9,"order":10,"category":11,"sector":12,"year":13,"role":14,"status":15,"outstanding":6,"url":16,"image":17,"imageWidth":18,"imageHeight":19,"summary":20,"technologies":21,"body":28,"_type":94,"_id":95,"_source":96,"_file":97,"_stem":98,"_extension":99},"\u002Fes\u002Fprojects\u002Fdavid-crous","projects",false,"","David Crous","david-crous",11,"Página Web","Portafolio personal","2026","Diseño y desarrollo full-stack","online","https:\u002F\u002Fcrousmayne.com","\u002Fimages\u002Fprojects\u002Fdavidcrous-home.webp",3582,1870,"Esta misma web: estática, en tres idiomas y alojada en Cloudflare Pages.",[22,23,24,25,26,27],"Nuxt 3","Vue 3","Tailwind 4","Nuxt Content","Nuxt i18n","Figma",{"type":29,"children":30,"toc":88},"root",[31,40,46,52,77,83],{"type":32,"tag":33,"props":34,"children":36},"element","h2",{"id":35},"el-reto",[37],{"type":38,"value":39},"text","El reto",{"type":32,"tag":41,"props":42,"children":43},"p",{},[44],{"type":38,"value":45},"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":32,"tag":33,"props":47,"children":49},{"id":48},"qué-hice",[50],{"type":38,"value":51},"Qué hice",{"type":32,"tag":53,"props":54,"children":55},"ul",{},[56,62,67,72],{"type":32,"tag":57,"props":58,"children":59},"li",{},[60],{"type":38,"value":61},"La rediseñé y desarrollé desde cero con Nuxt 3, Tailwind 4 y Nuxt Content, con todo el contenido en archivos Markdown.",{"type":32,"tag":57,"props":63,"children":64},{},[65],{"type":38,"value":66},"Todas las páginas se generan como HTML estático, en catalán, castellano e inglés.",{"type":32,"tag":57,"props":68,"children":69},{},[70],{"type":38,"value":71},"Está alojada en Cloudflare Pages: se publica automáticamente con cada cambio y mide las visitas sin cookies.",{"type":32,"tag":57,"props":73,"children":74},{},[75],{"type":38,"value":76},"Tiene SEO por idioma (hreflang, sitemap y Schema.org) y un hero con una animación de partículas interactiva.",{"type":32,"tag":33,"props":78,"children":80},{"id":79},"resultado",[81],{"type":38,"value":82},"Resultado",{"type":32,"tag":41,"props":84,"children":85},{},[86],{"type":38,"value":87},"Es la web que estás viendo ahora.",{"title":7,"searchDepth":89,"depth":89,"links":90},2,[91,92,93],{"id":35,"depth":89,"text":39},{"id":48,"depth":89,"text":51},{"id":79,"depth":89,"text":82},"markdown","content:es:projects:david-crous.md","content","es\u002Fprojects\u002Fdavid-crous.md","es\u002Fprojects\u002Fdavid-crous","md",[101,170,246,330,409,472,540,618,678,737,802],{"_path":102,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"title":103,"description":7,"slug":104,"order":105,"category":11,"sector":106,"year":107,"role":14,"status":15,"outstanding":108,"url":109,"image":110,"imageWidth":111,"imageHeight":112,"summary":113,"technologies":114,"body":120,"_type":94,"_id":167,"_source":96,"_file":168,"_stem":169,"_extension":99},"\u002Fes\u002Fprojects\u002Fgelinet","Gelinet","gelinet",1,"Servicios de limpieza","2021",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.",[115,116,117,118,119],"Laravel","PHP","Bootstrap","HTML","Sass",{"type":29,"children":121,"toc":162},[122,126,131,135,153,157],{"type":32,"tag":33,"props":123,"children":124},{"id":35},[125],{"type":38,"value":39},{"type":32,"tag":41,"props":127,"children":128},{},[129],{"type":38,"value":130},"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":32,"tag":33,"props":132,"children":133},{"id":48},[134],{"type":38,"value":51},{"type":32,"tag":53,"props":136,"children":137},{},[138,143,148],{"type":32,"tag":57,"props":139,"children":140},{},[141],{"type":38,"value":142},"Diseñé y desarrollé la web en 2021 con Laravel, sobre un CMS propio que había creado para mis proyectos de cliente.",{"type":32,"tag":57,"props":144,"children":145},{},[146],{"type":38,"value":147},"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":32,"tag":57,"props":149,"children":150},{},[151],{"type":38,"value":152},"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":32,"tag":33,"props":154,"children":155},{"id":79},[156],{"type":38,"value":82},{"type":32,"tag":41,"props":158,"children":159},{},[160],{"type":38,"value":161},"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":7,"searchDepth":89,"depth":89,"links":163},[164,165,166],{"id":35,"depth":89,"text":39},{"id":48,"depth":89,"text":51},{"id":79,"depth":89,"text":82},"content:es:projects:gelinet.md","es\u002Fprojects\u002Fgelinet.md","es\u002Fprojects\u002Fgelinet",{"_path":171,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"title":172,"description":7,"slug":173,"order":89,"category":174,"sector":175,"year":176,"role":177,"status":178,"outstanding":6,"url":7,"image":179,"imageWidth":180,"imageHeight":181,"summary":182,"gallery":183,"technologies":189,"body":191,"_type":94,"_id":243,"_source":96,"_file":244,"_stem":245,"_extension":99},"\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.",[184],{"src":185,"width":186,"height":187,"alt":188},"\u002Fimages\u002Fprojects\u002Fclicat-deures.webp",1596,730,"Espacio del alumno con los deberes asignados por asignatura",[116,117,118,190],"CSS",{"type":29,"children":192,"toc":238},[193,197,202,206,229,233],{"type":32,"tag":33,"props":194,"children":195},{"id":35},[196],{"type":38,"value":39},{"type":32,"tag":41,"props":198,"children":199},{},[200],{"type":38,"value":201},"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":32,"tag":33,"props":203,"children":204},{"id":48},[205],{"type":38,"value":51},{"type":32,"tag":53,"props":207,"children":208},{},[209,214,219,224],{"type":32,"tag":57,"props":210,"children":211},{},[212],{"type":38,"value":213},"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":32,"tag":57,"props":215,"children":216},{},[217],{"type":38,"value":218},"El profesorado puede crear exámenes, listas de problemas y cuadernos de ejercicios, y organizar al alumnado en grupos.",{"type":32,"tag":57,"props":220,"children":221},{},[222],{"type":38,"value":223},"Hay informes de progreso y de deberes, con exportación a Excel y PDF.",{"type":32,"tag":57,"props":225,"children":226},{},[227],{"type":38,"value":228},"Las familias tienen su propio acceso, con informes y un chat con el profesorado.",{"type":32,"tag":33,"props":230,"children":231},{"id":79},[232],{"type":38,"value":82},{"type":32,"tag":41,"props":234,"children":235},{},[236],{"type":38,"value":237},"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":7,"searchDepth":89,"depth":89,"links":239},[240,241,242],{"id":35,"depth":89,"text":39},{"id":48,"depth":89,"text":51},{"id":79,"depth":89,"text":82},"content:es:projects:clica-t.md","es\u002Fprojects\u002Fclica-t.md","es\u002Fprojects\u002Fclica-t",{"_path":247,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"title":248,"description":7,"slug":249,"order":250,"category":174,"sector":251,"year":252,"role":177,"status":15,"outstanding":108,"url":253,"image":254,"imageWidth":111,"imageHeight":112,"summary":255,"gallery":256,"technologies":263,"body":270,"_type":94,"_id":327,"_source":96,"_file":328,"_stem":329,"_extension":99},"\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.",[257,260],{"src":258,"width":111,"height":112,"alt":259},"\u002Fimages\u002Fprojects\u002Fedicitnet-cataleg.webp","Catálogo de iniciativas y soluciones con el mapa interactivo",{"src":261,"width":111,"height":112,"alt":262},"\u002Fimages\u002Fprojects\u002Fedicitnet-esdeveniments.webp","Agenda de eventos con filtros y mapa",[264,265,266,267,268,269],"Vue","Node.js","Express","MySQL","Leaflet","Vue I18n",{"type":29,"children":271,"toc":322},[272,276,281,285,313,317],{"type":32,"tag":33,"props":273,"children":274},{"id":35},[275],{"type":38,"value":39},{"type":32,"tag":41,"props":277,"children":278},{},[279],{"type":38,"value":280},"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":32,"tag":33,"props":282,"children":283},{"id":48},[284],{"type":38,"value":51},{"type":32,"tag":53,"props":286,"children":287},{},[288,293,298,303,308],{"type":32,"tag":57,"props":289,"children":290},{},[291],{"type":38,"value":292},"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":32,"tag":57,"props":294,"children":295},{},[296],{"type":38,"value":297},"La primera versión se hizo con Vue 2 y Chart.js. La segunda es una reescritura completa con Vue 3 y Vite.",{"type":32,"tag":57,"props":299,"children":300},{},[301],{"type":38,"value":302},"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":32,"tag":57,"props":304,"children":305},{},[306],{"type":38,"value":307},"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":32,"tag":57,"props":309,"children":310},{},[311],{"type":38,"value":312},"Toda la interfaz es multilingüe.",{"type":32,"tag":33,"props":314,"children":315},{"id":79},[316],{"type":38,"value":82},{"type":32,"tag":41,"props":318,"children":319},{},[320],{"type":38,"value":321},"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":7,"searchDepth":89,"depth":89,"links":323},[324,325,326],{"id":35,"depth":89,"text":39},{"id":48,"depth":89,"text":51},{"id":79,"depth":89,"text":82},"content:es:projects:edicitnet.md","es\u002Fprojects\u002Fedicitnet.md","es\u002Fprojects\u002Fedicitnet",{"_path":331,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"title":332,"description":7,"slug":333,"order":334,"category":174,"sector":335,"year":336,"role":177,"status":15,"outstanding":108,"url":337,"image":338,"imageWidth":111,"imageHeight":112,"summary":339,"gallery":340,"technologies":347,"body":349,"_type":94,"_id":406,"_source":96,"_file":407,"_stem":408,"_extension":99},"\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.",[341,344],{"src":342,"width":111,"height":112,"alt":343},"\u002Fimages\u002Fprojects\u002Fnat4wat-solucions.webp","Catálogo de soluciones basadas en la naturaleza",{"src":345,"width":111,"height":112,"alt":346},"\u002Fimages\u002Fprojects\u002Fnat4wat-casos.webp","Listado de casos de mercado con filtros",[22,264,348,265],"Pinia",{"type":29,"children":350,"toc":401},[351,355,360,364,392,396],{"type":32,"tag":33,"props":352,"children":353},{"id":35},[354],{"type":38,"value":39},{"type":32,"tag":41,"props":356,"children":357},{},[358],{"type":38,"value":359},"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":32,"tag":33,"props":361,"children":362},{"id":48},[363],{"type":38,"value":51},{"type":32,"tag":53,"props":365,"children":366},{},[367,372,377,382,387],{"type":32,"tag":57,"props":368,"children":369},{},[370],{"type":38,"value":371},"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":32,"tag":57,"props":373,"children":374},{},[375],{"type":38,"value":376},"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":32,"tag":57,"props":378,"children":379},{},[380],{"type":38,"value":381},"Las soluciones se comparan con un análisis multicriterio con gráficos, y se puede generar un informe.",{"type":32,"tag":57,"props":383,"children":384},{},[385],{"type":38,"value":386},"También hay un catálogo de soluciones, publicaciones científicas y casos de mercado, con un circuito para aceptarlos y publicarlos.",{"type":32,"tag":57,"props":388,"children":389},{},[390],{"type":38,"value":391},"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":32,"tag":33,"props":393,"children":394},{"id":79},[395],{"type":38,"value":82},{"type":32,"tag":41,"props":397,"children":398},{},[399],{"type":38,"value":400},"La herramienta es pública y sigue activa en nat4wat.icra.cat.",{"title":7,"searchDepth":89,"depth":89,"links":402},[403,404,405],{"id":35,"depth":89,"text":39},{"id":48,"depth":89,"text":51},{"id":79,"depth":89,"text":82},"content:es:projects:nat4wat.md","es\u002Fprojects\u002Fnat4wat.md","es\u002Fprojects\u002Fnat4wat",{"_path":410,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"title":411,"description":7,"slug":412,"order":413,"category":174,"sector":414,"year":415,"role":14,"status":416,"outstanding":6,"url":7,"image":417,"imageWidth":111,"imageHeight":112,"summary":418,"technologies":419,"body":422,"_type":94,"_id":469,"_source":96,"_file":470,"_stem":471,"_extension":99},"\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.",[115,116,264,420,421],"Vuex","Tailwind CSS",{"type":29,"children":423,"toc":465},[424,428,433,437],{"type":32,"tag":33,"props":425,"children":426},{"id":35},[427],{"type":38,"value":39},{"type":32,"tag":41,"props":429,"children":430},{},[431],{"type":38,"value":432},"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":32,"tag":33,"props":434,"children":435},{"id":48},[436],{"type":38,"value":51},{"type":32,"tag":53,"props":438,"children":439},{},[440,445,450,455,460],{"type":32,"tag":57,"props":441,"children":442},{},[443],{"type":38,"value":444},"En 2022 diseñé y desarrollé EnfaixApp, una aplicación web con Laravel, Vue y Tailwind CSS.",{"type":32,"tag":57,"props":446,"children":447},{},[448],{"type":38,"value":449},"Cada casteller tiene su ficha, con las posiciones en las que puede hacer castells.",{"type":32,"tag":57,"props":451,"children":452},{},[453],{"type":38,"value":454},"Hay un calendario de ensayos y actuaciones donde cada uno confirma si asistirá, y los responsables ven la asistencia al momento.",{"type":32,"tag":57,"props":456,"children":457},{},[458],{"type":38,"value":459},"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":32,"tag":57,"props":461,"children":462},{},[463],{"type":38,"value":464},"También tiene formularios con respuestas, notificaciones, un registro de actividad reciente y roles con permisos distintos.",{"title":7,"searchDepth":89,"depth":89,"links":466},[467,468],{"id":35,"depth":89,"text":39},{"id":48,"depth":89,"text":51},"content:es:projects:enfaixapp.md","es\u002Fprojects\u002Fenfaixapp.md","es\u002Fprojects\u002Fenfaixapp",{"_path":473,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"title":474,"description":7,"slug":475,"order":476,"category":174,"sector":251,"year":477,"role":14,"status":416,"outstanding":6,"url":7,"image":478,"imageWidth":111,"imageHeight":112,"summary":479,"gallery":480,"technologies":484,"body":485,"_type":94,"_id":537,"_source":96,"_file":538,"_stem":539,"_extension":99},"\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.",[481],{"src":482,"width":111,"height":112,"alt":483},"\u002Fimages\u002Fprojects\u002Ficra-workshop-top10.webp","Ranking de los 10 aspectos más votados durante un taller (datos de prueba)",[22,264,348,421],{"type":29,"children":486,"toc":532},[487,491,496,500,523,527],{"type":32,"tag":33,"props":488,"children":489},{"id":35},[490],{"type":38,"value":39},{"type":32,"tag":41,"props":492,"children":493},{},[494],{"type":38,"value":495},"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":32,"tag":33,"props":497,"children":498},{"id":48},[499],{"type":38,"value":51},{"type":32,"tag":53,"props":501,"children":502},{},[503,508,513,518],{"type":32,"tag":57,"props":504,"children":505},{},[506],{"type":38,"value":507},"Fue un encargo puntual: desarrollé una aplicación web con Nuxt 3, Pinia y Tailwind CSS.",{"type":32,"tag":57,"props":509,"children":510},{},[511],{"type":38,"value":512},"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":32,"tag":57,"props":514,"children":515},{},[516],{"type":38,"value":517},"Con un clic, la herramienta calcula el ranking de los 10 aspectos más votados y muestra sus indicadores relacionados con gráficos.",{"type":32,"tag":57,"props":519,"children":520},{},[521],{"type":38,"value":522},"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":32,"tag":33,"props":524,"children":525},{"id":79},[526],{"type":38,"value":82},{"type":32,"tag":41,"props":528,"children":529},{},[530],{"type":38,"value":531},"Era una herramienta privada, pensada para el equipo del ICRA, que se fue ajustando con el feedback de los talleres.",{"title":7,"searchDepth":89,"depth":89,"links":533},[534,535,536],{"id":35,"depth":89,"text":39},{"id":48,"depth":89,"text":51},{"id":79,"depth":89,"text":82},"content:es:projects:icra-workshop.md","es\u002Fprojects\u002Ficra-workshop.md","es\u002Fprojects\u002Ficra-workshop",{"_path":541,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"title":542,"description":7,"slug":543,"order":544,"category":11,"sector":545,"year":546,"role":14,"status":15,"outstanding":6,"url":547,"image":548,"imageWidth":549,"imageHeight":550,"summary":551,"gallery":552,"technologies":562,"body":563,"_type":94,"_id":615,"_source":96,"_file":616,"_stem":617,"_extension":99},"\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.",[553,556,559],{"src":554,"width":111,"height":112,"alt":555},"\u002Fimages\u002Fprojects\u002Fhostal-bartis-habitacions.webp","Página de habitaciones",{"src":557,"width":111,"height":112,"alt":558},"\u002Fimages\u002Fprojects\u002Fhostal-bartis-doble.webp","Ficha de la habitación doble con galería de fotos",{"src":560,"width":111,"height":112,"alt":561},"\u002Fimages\u002Fprojects\u002Fhostal-bartis-historia.webp","Página de historia del hostal",[115,116,117,118,190],{"type":29,"children":564,"toc":610},[565,569,574,578,601,605],{"type":32,"tag":33,"props":566,"children":567},{"id":35},[568],{"type":38,"value":39},{"type":32,"tag":41,"props":570,"children":571},{},[572],{"type":38,"value":573},"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":32,"tag":33,"props":575,"children":576},{"id":48},[577],{"type":38,"value":51},{"type":32,"tag":53,"props":579,"children":580},{},[581,586,591,596],{"type":32,"tag":57,"props":582,"children":583},{},[584],{"type":38,"value":585},"Diseñé y desarrollé la web con Laravel y Bootstrap, adaptada a móviles.",{"type":32,"tag":57,"props":587,"children":588},{},[589],{"type":38,"value":590},"La monté sobre mi CMS propio para que los propietarios pudieran actualizar textos, fotos y habitaciones desde un panel.",{"type":32,"tag":57,"props":592,"children":593},{},[594],{"type":38,"value":595},"Los contenidos estaban en catalán, castellano e inglés, pensando en el visitante extranjero.",{"type":32,"tag":57,"props":597,"children":598},{},[599],{"type":38,"value":600},"Añadí un formulario de contacto y de reserva.",{"type":32,"tag":33,"props":602,"children":603},{"id":79},[604],{"type":38,"value":82},{"type":32,"tag":41,"props":606,"children":607},{},[608],{"type":38,"value":609},"La web está en línea desde 2020, y desde entonces los propietarios gestionan su contenido de forma autónoma.",{"title":7,"searchDepth":89,"depth":89,"links":611},[612,613,614],{"id":35,"depth":89,"text":39},{"id":48,"depth":89,"text":51},{"id":79,"depth":89,"text":82},"content:es:projects:hostal-bartis.md","es\u002Fprojects\u002Fhostal-bartis.md","es\u002Fprojects\u002Fhostal-bartis",{"_path":619,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"title":620,"description":7,"slug":621,"order":622,"category":11,"sector":623,"year":624,"role":14,"status":178,"outstanding":6,"url":7,"image":625,"imageWidth":111,"imageHeight":112,"summary":626,"technologies":627,"body":628,"_type":94,"_id":675,"_source":96,"_file":676,"_stem":677,"_extension":99},"\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.",[115,116,117,118,190],{"type":29,"children":629,"toc":670},[630,634,639,643,661,665],{"type":32,"tag":33,"props":631,"children":632},{"id":35},[633],{"type":38,"value":39},{"type":32,"tag":41,"props":635,"children":636},{},[637],{"type":38,"value":638},"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":32,"tag":33,"props":640,"children":641},{"id":48},[642],{"type":38,"value":51},{"type":32,"tag":53,"props":644,"children":645},{},[646,651,656],{"type":32,"tag":57,"props":647,"children":648},{},[649],{"type":38,"value":650},"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":32,"tag":57,"props":652,"children":653},{},[654],{"type":38,"value":655},"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":32,"tag":57,"props":657,"children":658},{},[659],{"type":38,"value":660},"Ella misma podía actualizar textos, imágenes y entradas del blog desde el panel.",{"type":32,"tag":33,"props":662,"children":663},{"id":79},[664],{"type":38,"value":82},{"type":32,"tag":41,"props":666,"children":667},{},[668],{"type":38,"value":669},"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":7,"searchDepth":89,"depth":89,"links":671},[672,673,674],{"id":35,"depth":89,"text":39},{"id":48,"depth":89,"text":51},{"id":79,"depth":89,"text":82},"content:es:projects:merce-paytuvi.md","es\u002Fprojects\u002Fmerce-paytuvi.md","es\u002Fprojects\u002Fmerce-paytuvi",{"_path":679,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"title":680,"description":7,"slug":681,"order":682,"category":11,"sector":683,"year":107,"role":14,"status":178,"outstanding":6,"url":7,"image":684,"imageWidth":111,"imageHeight":112,"summary":685,"technologies":686,"body":687,"_type":94,"_id":734,"_source":96,"_file":735,"_stem":736,"_extension":99},"\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.",[115,116,117,190,119],{"type":29,"children":688,"toc":729},[689,693,698,702,720,724],{"type":32,"tag":33,"props":690,"children":691},{"id":35},[692],{"type":38,"value":39},{"type":32,"tag":41,"props":694,"children":695},{},[696],{"type":38,"value":697},"Integral, una empresa de servicios de Banyoles, necesitaba una web corporativa clara para presentar su actividad en varios idiomas y poder actualizarla internamente.",{"type":32,"tag":33,"props":699,"children":700},{"id":48},[701],{"type":38,"value":51},{"type":32,"tag":53,"props":703,"children":704},{},[705,710,715],{"type":32,"tag":57,"props":706,"children":707},{},[708],{"type":38,"value":709},"Desarrollé la web en 2021 con Laravel, Bootstrap y Sass, sobre mi CMS propio.",{"type":32,"tag":57,"props":711,"children":712},{},[713],{"type":38,"value":714},"Los contenidos estaban en catalán, castellano e inglés, con secciones y plantillas configurables y un blog con categorías.",{"type":32,"tag":57,"props":716,"children":717},{},[718],{"type":38,"value":719},"Añadí un formulario de contacto y la integración con herramientas de analítica.",{"type":32,"tag":33,"props":721,"children":722},{"id":79},[723],{"type":38,"value":82},{"type":32,"tag":41,"props":725,"children":726},{},[727],{"type":38,"value":728},"La empresa tuvo una web que podía gestionar de forma autónoma. Actualmente ya no está en línea.",{"title":7,"searchDepth":89,"depth":89,"links":730},[731,732,733],{"id":35,"depth":89,"text":39},{"id":48,"depth":89,"text":51},{"id":79,"depth":89,"text":82},"content:es:projects:integral.md","es\u002Fprojects\u002Fintegral.md","es\u002Fprojects\u002Fintegral",{"_path":738,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"title":739,"description":7,"slug":740,"order":741,"category":11,"sector":742,"year":107,"role":14,"status":178,"outstanding":6,"url":7,"image":743,"imageWidth":111,"imageHeight":112,"summary":744,"gallery":745,"technologies":749,"body":752,"_type":94,"_id":799,"_source":96,"_file":800,"_stem":801,"_extension":99},"\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.",[746],{"src":747,"width":111,"height":112,"alt":748},"\u002Fimages\u002Fprojects\u002Fdavidbusquets-albums.webp","Sección de álbumes con enlaces a las plataformas de música",[264,750,751],"Tailwind","Vite",{"type":29,"children":753,"toc":794},[754,758,763,767,785,789],{"type":32,"tag":33,"props":755,"children":756},{"id":35},[757],{"type":38,"value":39},{"type":32,"tag":41,"props":759,"children":760},{},[761],{"type":38,"value":762},"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":32,"tag":33,"props":764,"children":765},{"id":48},[766],{"type":38,"value":51},{"type":32,"tag":53,"props":768,"children":769},{},[770,775,780],{"type":32,"tag":57,"props":771,"children":772},{},[773],{"type":38,"value":774},"Creé una aplicación de una sola página con Vue 3, Vite y Tailwind CSS, rápida y adaptada a móviles.",{"type":32,"tag":57,"props":776,"children":777},{},[778],{"type":38,"value":779},"Hice componentes específicos: galería de fotos, videoclips, lista de reproducción y un calendario de conciertos.",{"type":32,"tag":57,"props":781,"children":782},{},[783],{"type":38,"value":784},"La web era multilingüe, con cambio de idioma sin recargar la página.",{"type":32,"tag":33,"props":786,"children":787},{"id":79},[788],{"type":38,"value":82},{"type":32,"tag":41,"props":790,"children":791},{},[792],{"type":38,"value":793},"La web reunió en un solo lugar toda la actividad del músico. Actualmente ya no está en línea.",{"title":7,"searchDepth":89,"depth":89,"links":795},[796,797,798],{"id":35,"depth":89,"text":39},{"id":48,"depth":89,"text":51},{"id":79,"depth":89,"text":82},"content:es:projects:david-busquets.md","es\u002Fprojects\u002Fdavid-busquets.md","es\u002Fprojects\u002Fdavid-busquets",{"_path":4,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"title":8,"description":7,"slug":9,"order":10,"category":11,"sector":12,"year":13,"role":14,"status":15,"outstanding":6,"url":16,"image":17,"imageWidth":18,"imageHeight":19,"summary":20,"technologies":803,"body":804,"_type":94,"_id":95,"_source":96,"_file":97,"_stem":98,"_extension":99},[22,23,24,25,26,27],{"type":29,"children":805,"toc":845},[806,810,814,818,837,841],{"type":32,"tag":33,"props":807,"children":808},{"id":35},[809],{"type":38,"value":39},{"type":32,"tag":41,"props":811,"children":812},{},[813],{"type":38,"value":45},{"type":32,"tag":33,"props":815,"children":816},{"id":48},[817],{"type":38,"value":51},{"type":32,"tag":53,"props":819,"children":820},{},[821,825,829,833],{"type":32,"tag":57,"props":822,"children":823},{},[824],{"type":38,"value":61},{"type":32,"tag":57,"props":826,"children":827},{},[828],{"type":38,"value":66},{"type":32,"tag":57,"props":830,"children":831},{},[832],{"type":38,"value":71},{"type":32,"tag":57,"props":834,"children":835},{},[836],{"type":38,"value":76},{"type":32,"tag":33,"props":838,"children":839},{"id":79},[840],{"type":38,"value":82},{"type":32,"tag":41,"props":842,"children":843},{},[844],{"type":38,"value":87},{"title":7,"searchDepth":89,"depth":89,"links":846},[847,848,849],{"id":35,"depth":89,"text":39},{"id":48,"depth":89,"text":51},{"id":79,"depth":89,"text":82},1791373247035]