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