1:HL["/_next/static/css/cc4372a95c3f4d70.css","style",{"crossOrigin":""}] 0:["6Hf9gjeptnXwb-ZeqYZY2",[[["",{"children":["projects",{"children":[["uid","weather-app","d"],{"children":["__PAGE__?{\"uid\":\"weather-app\"}",{}]}]}]},"$undefined","$undefined",true],"$L2",[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/cc4372a95c3f4d70.css","precedence":"next","crossOrigin":""}]],"$L3"]]]] 5:I[6954,[],""] 6:I[7264,[],""] b:I[9817,["51","static/chunks/795d4814-c504a020f883e502.js","980","static/chunks/980-b29bb817c89dbc45.js","439","static/chunks/439-b7e88012734c3f8e.js","185","static/chunks/app/layout-f202332b787806de.js"],"Analytics"] 2:[null,["$","html",null,{"lang":"en","className":"text-slate-100 m-0 p-0","style":{"height":"100%","minHeight":"100vh"},"children":[["$","body",null,{"className":"__className_472caf min-h-screen w-full relative","style":{"minHeight":"100vh","height":"100%","width":"100%","background":"transparent"},"children":[["$","div",null,{"style":{"position":"fixed","top":0,"left":0,"width":"100vw","height":"100vh","zIndex":-2,"backgroundImage":"url('/background/dark-red.jpg')","backgroundSize":"cover","backgroundPosition":"center","backgroundRepeat":"no-repeat"}}],["$","div",null,{"style":{"position":"fixed","top":0,"left":0,"width":"100vw","height":"100vh","zIndex":-1,"background":"rgba(0,0,0,0.45)","pointerEvents":"none"}}],"$L4",["$","$L5",null,{"parallelRouterKey":"children","segmentPath":["children"],"loading":"$undefined","loadingStyles":"$undefined","loadingScripts":"$undefined","hasLoading":false,"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L6",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":"404"}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],"notFoundStyles":[],"initialChildNode":["$","$L5",null,{"parallelRouterKey":"children","segmentPath":["children","projects","children"],"loading":"$undefined","loadingStyles":"$undefined","loadingScripts":"$undefined","hasLoading":false,"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L6",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","notFoundStyles":"$undefined","initialChildNode":["$","$L5",null,{"parallelRouterKey":"children","segmentPath":["children","projects","children",["uid","weather-app","d"],"children"],"loading":"$undefined","loadingStyles":"$undefined","loadingScripts":"$undefined","hasLoading":false,"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L6",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","notFoundStyles":"$undefined","initialChildNode":["$L7","$L8",null],"childPropSegment":"__PAGE__?{\"uid\":\"weather-app\"}","styles":null}],"childPropSegment":["uid","weather-app","d"],"styles":null}],"childPropSegment":"projects","styles":null}],"$L9"]}],"$La",["$","$Lb",null,{}]]}],null] c:I[2678,["51","static/chunks/795d4814-c504a020f883e502.js","922","static/chunks/c15bf2b0-9d8717324b1e67d6.js","870","static/chunks/bd904a5c-f823905c5d28c40c.js","689","static/chunks/b536a0f1-448ca6f7d4d2250f.js","980","static/chunks/980-b29bb817c89dbc45.js","815","static/chunks/815-2e6a34b73afd6a5c.js","686","static/chunks/686-b55b0103a39ae4a7.js","634","static/chunks/634-8d76538b675fe546.js","439","static/chunks/439-b7e88012734c3f8e.js","994","static/chunks/994-a46ca7a9077e0ce9.js","345","static/chunks/app/projects/%5Buid%5D/page-c3b7d53ee912614b.js"],"PrismicPreviewClient"] d:I[3994,["51","static/chunks/795d4814-c504a020f883e502.js","922","static/chunks/c15bf2b0-9d8717324b1e67d6.js","870","static/chunks/bd904a5c-f823905c5d28c40c.js","689","static/chunks/b536a0f1-448ca6f7d4d2250f.js","980","static/chunks/980-b29bb817c89dbc45.js","815","static/chunks/815-2e6a34b73afd6a5c.js","686","static/chunks/686-b55b0103a39ae4a7.js","634","static/chunks/634-8d76538b675fe546.js","439","static/chunks/439-b7e88012734c3f8e.js","994","static/chunks/994-a46ca7a9077e0ce9.js","345","static/chunks/app/projects/%5Buid%5D/page-c3b7d53ee912614b.js"],"*"] a:["$undefined",["$","$Lc",null,{"repositoryName":"portfolio-benjamin-lecomte","isDraftMode":false}],["$","$Ld",null,{"src":"https://static.cdn.prismic.io/prismic.js?new=true&repo=portfolio-benjamin-lecomte","strategy":"lazyOnload"}]] 8:"$Le" f:"$Sreact.suspense" 13:I[678,["51","static/chunks/795d4814-c504a020f883e502.js","980","static/chunks/980-b29bb817c89dbc45.js","439","static/chunks/439-b7e88012734c3f8e.js","185","static/chunks/app/layout-f202332b787806de.js"],""] 14:I[8326,["51","static/chunks/795d4814-c504a020f883e502.js","922","static/chunks/c15bf2b0-9d8717324b1e67d6.js","870","static/chunks/bd904a5c-f823905c5d28c40c.js","689","static/chunks/b536a0f1-448ca6f7d4d2250f.js","980","static/chunks/980-b29bb817c89dbc45.js","815","static/chunks/815-2e6a34b73afd6a5c.js","686","static/chunks/686-b55b0103a39ae4a7.js","634","static/chunks/634-8d76538b675fe546.js","439","static/chunks/439-b7e88012734c3f8e.js","994","static/chunks/994-a46ca7a9077e0ce9.js","345","static/chunks/app/projects/%5Buid%5D/page-c3b7d53ee912614b.js"],""] 15:I[8326,["51","static/chunks/795d4814-c504a020f883e502.js","922","static/chunks/c15bf2b0-9d8717324b1e67d6.js","870","static/chunks/bd904a5c-f823905c5d28c40c.js","689","static/chunks/b536a0f1-448ca6f7d4d2250f.js","980","static/chunks/980-b29bb817c89dbc45.js","815","static/chunks/815-2e6a34b73afd6a5c.js","686","static/chunks/686-b55b0103a39ae4a7.js","634","static/chunks/634-8d76538b675fe546.js","439","static/chunks/439-b7e88012734c3f8e.js","994","static/chunks/994-a46ca7a9077e0ce9.js","345","static/chunks/app/projects/%5Buid%5D/page-c3b7d53ee912614b.js"],"*"] e:["$","article",null,{"className":"px-4 md:px-6 ","children":["$","div",null,{"className":"mx-auto w-full max-w-7xl mt-24","children":["$","div",null,{"className":"rounded-2xl bg-black/75 px-4 py-10 md:px-8 md:py-12 z-1000 border-2 border-slate-600","children":[["$","div",null,{"className":"relative rounded max-w-fit","children":[["$","div",null,{"className":"z-10 absolute left-0 top-0 rounded h-full w-4 bg-gradient-to-r from-white via-white to-transparent pointer-events-none"}],["$","div",null,{"className":"flex gap-4 text-black max-w-fit bg-white px-4 rounded-[10px] py-2 text-xl font-bold overflow-x-auto scrollbar-hide relative","children":[["$","span","CSS",{"children":"CSS"}],["$","span","React",{"children":"React"}],["$","span","JS",{"children":"JS"}],["$","span","API",{"children":"API"}],["$","span","HTML",{"children":"HTML"}],["$","span","Vite",{"children":"Vite"}]]}],["$","div",null,{"className":"z-10 absolute right-0 top-0 rounded h-full w-4 bg-gradient-to-l from-white via-white to-transparent pointer-events-none"}]]}],["$","h1",null,{"className":"font-bold leading-tight tracking-tight text-gray-50 text-6xl md:text-8xl mt-8","children":"Weather App"}],["$","p",null,{"className":"py-4 mt-4 border-b-2 border-slate-600 text-xl font-medium text-slate-300","children":"Sunday, April 6, 2025"}],["$","div",null,{"className":"prose prose-lg prose-invert mt-8 w-full max-w-none md:mt-12 text-slate-300 prose-strong:text-slate-50 prose-headings:text-slate-50 ","children":[["$","$f",null,{"fallback":null,"children":"$L10"}],["$","$f",null,{"fallback":null,"children":"$L11"}],["$","$f",null,{"fallback":null,"children":"$L12"}]]}]]}]}]}] 4:["$","header",null,{"className":"top-0 z-50 mx-auto max-w-7xl md:sticky md:top-4","children":["$","$L13",null,{"settings":{"id":"Z5rjARAAACEA12z4","uid":null,"url":null,"type":"settings","href":"https://portfolio-benjamin-lecomte.cdn.prismic.io/api/v2/documents/search?ref=aK97FhEAACkAOt-T&q=%5B%5B%3Ad+%3D+at%28document.id%2C+%22Z5rjARAAACEA12z4%22%29+%5D%5D","tags":[],"first_publication_date":"2025-01-30T02:25:07+0000","last_publication_date":"2025-02-25T09:59:56+0000","slugs":["settings"],"linked_documents":[],"lang":"en-us","alternate_languages":[],"data":{"name":"Benjamin Lecomte","nav_item":[{"link":{"id":"Z5rmVRAAACAA13Ky","type":"page","tags":[],"lang":"en-us","slug":"sur-moi","first_publication_date":"2025-01-30T02:39:21+0000","last_publication_date":"2025-08-27T21:37:23+0000","uid":"about","url":"/about","link_type":"Document","key":"f8cedee2-d360-4f7a-8ba5-b6461d24fc32","isBroken":false,"text":"About"},"label":"A propos"},{"link":{"id":"Z5scsBAAAB8A18J9","type":"page","tags":[],"lang":"en-us","slug":"projects","first_publication_date":"2025-01-30T06:31:16+0000","last_publication_date":"2025-02-25T10:02:03+0000","uid":"projects","url":"/projects","link_type":"Document","key":"986be582-356b-4244-94a3-d103b6c3a554","isBroken":false,"text":"Projects"},"label":"Projets"}],"cta_link":{"link_type":"Web","key":"9f54416b-f6ad-4f68-b90c-fe46f1a2a672","url":"mailto:benjamin.l06@outlook.fr","text":"Contact"},"cta_label":"Contact","twitter_link":{"link_type":"Any","key":"1f0f43b1-aa42-4ba1-bdc5-fa80bbb95a51"},"github_link":{"link_type":"Web","key":"78ab3d20-74c6-4a8c-84c4-eb7c26c17a50","url":"https://github.com/Benjam1Lct","target":"_blank","text":"GitHub"},"linkedin_link":{"link_type":"Any","key":"7ddbcbca-ad04-4372-9ec2-768d82dd0687","text":"LinkedIn"},"meta_title":null,"meta_description":null,"og_image":{}}}}]}] 16:T518,M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z9:["$","footer",null,{"className":"px-4 md:px-6 ","children":["$","div",null,{"className":"mx-auto w-full max-w-7xl text-slate-600","children":["$","div",null,{"className":"container mx-auto mt-20 flex flex-col items-center justify-between gap-6 py-8 sm:flex-row ","children":[["$","div",null,{"className":"name flex flex-col items-center justify-center gap-x-4 gap-y-2 sm:flex-row sm:justify-self-start","children":[["$","$L14",null,{"href":"/","className":"text-xl font-extrabold tracking-tighter text-gray-50 transition-colors duration-150 hover:text-[#7D79D9]","children":"Benjamin Lecomte"}],["$","span",null,{"className":"hidden text-5xl font-extralight leading-[0] text-gray-200 sm:inline","aria-hidden":true,"children":"/"}],["$","p",null,{"className":" text-sm text-gray-100 ","children":["© ",2025," ","Benjamin Lecomte"]}]]}],["$","nav",null,{"className":"navigation","aria-label":"Footer Navigation","children":["$","ul",null,{"className":"flex items-center gap-1","children":[[["$","li",null,{"children":["$","$L15",null,{"target":"$undefined","className":"group relative block overflow-hidden rounded px-3 py-1 text-base font-bold text-slate-100 transition-colors duration-150 hover:text-[#7D79D9]","href":"/about","rel":"$undefined","children":"A propos"}]}],["$","span",null,{"className":"text-4xl font-thin leading-[0] text-slate-400 ","aria-hidden":"true","children":"/"}]],[["$","li",null,{"children":["$","$L15",null,{"target":"$undefined","className":"group relative block overflow-hidden rounded px-3 py-1 text-base font-bold text-slate-100 transition-colors duration-150 hover:text-[#7D79D9]","href":"/projects","rel":"$undefined","children":"Projets"}]}],false]]}]}],["$","div",null,{"className":"socials inline-flex justify-center sm:justify-end","children":[["$","$L15",null,{"target":"_blank","className":"p-2 text-2xl text-slate-300 transition-all duration-150 hover:scale-125 hover:text-[#7D79D9]","aria-label":"Benjamin Lecomte on GitHub","href":"https://github.com/Benjam1Lct","rel":"noreferrer","children":["$","svg",null,{"stroke":"currentColor","fill":"currentColor","strokeWidth":"0","viewBox":"0 0 496 512","children":["$undefined",[["$","path","0",{"d":"$16","children":[]}]]],"className":"$undefined","style":{"color":"$undefined"},"height":"1em","width":"1em","xmlns":"http://www.w3.org/2000/svg"}]}],false,false]}]]}]}]}] 3:[["$","meta","0",{"name":"viewport","content":"width=device-width, initial-scale=1"}],["$","meta","1",{"charSet":"utf-8"}],["$","meta","2",{"name":"twitter:card","content":"summary"}],["$","link","3",{"rel":"icon","href":"/favicon.ico","type":"image/x-icon","sizes":"16x16"}]] 7:null 17:I[8170,["51","static/chunks/795d4814-c504a020f883e502.js","922","static/chunks/c15bf2b0-9d8717324b1e67d6.js","870","static/chunks/bd904a5c-f823905c5d28c40c.js","689","static/chunks/b536a0f1-448ca6f7d4d2250f.js","980","static/chunks/980-b29bb817c89dbc45.js","815","static/chunks/815-2e6a34b73afd6a5c.js","686","static/chunks/686-b55b0103a39ae4a7.js","634","static/chunks/634-8d76538b675fe546.js","439","static/chunks/439-b7e88012734c3f8e.js","994","static/chunks/994-a46ca7a9077e0ce9.js","345","static/chunks/app/projects/%5Buid%5D/page-c3b7d53ee912614b.js"],""] 10:["$","img",null,{"src":"https://images.prismic.io/portfolio-benjamin-lecomte/Z_PGRHdAxsiBwZmI_weatherApp.png?auto=format%2Ccompress&w=600","srcSet":"https://images.prismic.io/portfolio-benjamin-lecomte/Z_PGRHdAxsiBwZmI_weatherApp.png?auto=format%2Ccompress&width=640 640w, https://images.prismic.io/portfolio-benjamin-lecomte/Z_PGRHdAxsiBwZmI_weatherApp.png?auto=format%2Ccompress&width=828 828w, https://images.prismic.io/portfolio-benjamin-lecomte/Z_PGRHdAxsiBwZmI_weatherApp.png?auto=format%2Ccompress&width=1200 1200w, https://images.prismic.io/portfolio-benjamin-lecomte/Z_PGRHdAxsiBwZmI_weatherApp.png?auto=format%2Ccompress&width=2048 2048w, https://images.prismic.io/portfolio-benjamin-lecomte/Z_PGRHdAxsiBwZmI_weatherApp.png?auto=format%2Ccompress&width=3840 3840w","alt":"Dashboard","className":"rounded-2xl"}] 19:[] 1b:{"link_type":"Web","key":"e229a08f-44ed-4357-b4a0-56981ebc8075","url":"https://github.com/Benjam1Lct/weather-app","target":"_blank","text":"GitHub"} 1a:{"title":"GitHub","link":"$1b"} 18:{"variation":"default","version":"initial","items":"$19","primary":"$1a","id":"external_link$626c830a-139f-4c08-9b35-90a73e3ecece","slice_type":"external_link","slice_label":null} 11:["$","$L17",null,{"slice":{"variation":"default","version":"initial","items":[],"primary":{"title":"GitHub","link":{"link_type":"Web","key":"e229a08f-44ed-4357-b4a0-56981ebc8075","url":"https://github.com/Benjam1Lct/weather-app","target":"_blank","text":"GitHub"}},"id":"external_link$626c830a-139f-4c08-9b35-90a73e3ecece","slice_type":"external_link","slice_label":null},"index":1,"slices":[{"variation":"default","version":"initial","items":[],"primary":{"image":{"dimensions":{"width":1920,"height":1080},"alt":"Dashboard","copyright":null,"url":"https://images.prismic.io/portfolio-benjamin-lecomte/Z_PGRHdAxsiBwZmI_weatherApp.png?auto=format,compress","id":"Z_PGRHdAxsiBwZmI","edit":{"x":0,"y":0,"zoom":1,"background":"transparent"}}},"id":"image_block$7933b6e3-1948-4efa-b7ad-4a64e553b135","slice_type":"image_block","slice_label":null},"$18",{"variation":"default","version":"initial","items":[],"primary":{"text":[{"type":"heading3","text":"đŸŒŠïž Dashboard MĂ©tĂ©o – React & OpenWeatherMap API","spans":[],"direction":"ltr"},{"type":"paragraph","text":"J’ai conçu un dashboard mĂ©tĂ©o interactif en utilisant React avec Vite pour une performance optimale. Ce projet consomme les donnĂ©es en temps rĂ©el de l’API OpenWeatherMap afin d’afficher des prĂ©visions dĂ©taillĂ©es sous une interface moderne et responsive.","spans":[{"start":14,"end":40,"type":"strong"},{"start":54,"end":59,"type":"strong"},{"start":65,"end":69,"type":"strong"},{"start":155,"end":169,"type":"strong"}],"direction":"ltr"},{"type":"paragraph","text":"FonctionnalitĂ©s principales :","spans":[],"direction":"ltr"},{"type":"list-item","text":"🔍 Recherche de villes avec autocomplĂ©tion","spans":[{"start":3,"end":22,"type":"strong"}],"direction":"ltr"},{"type":"list-item","text":"đŸ§© Vue bento des donnĂ©es mĂ©tĂ©o : tempĂ©rature, pression, humiditĂ©, vent (direction, rafales), ressenti, etc.","spans":[{"start":3,"end":12,"type":"strong"}],"direction":"ltr"},{"type":"list-item","text":"📅 Timeline verticale des prĂ©visions horaires","spans":[{"start":3,"end":21,"type":"strong"}],"direction":"ltr"},{"type":"list-item","text":"🌐 SystĂšme de favoris sĂ©curisĂ© avec JWT pour enregistrer les villes prĂ©fĂ©rĂ©es","spans":[{"start":3,"end":21,"type":"strong"}],"direction":"ltr"},{"type":"list-item","text":"⚙ Architecture modulaire avec microservices : proxy backend, service mĂ©tĂ©o, service d’authentification","spans":[],"direction":"ltr"},{"type":"paragraph","text":"Ce projet met en avant mes compĂ©tences en frontend moderne, gestion d’état, appel API, et sĂ©curitĂ© web, tout en proposant une expĂ©rience utilisateur fluide.","spans":[{"start":42,"end":58,"type":"strong"},{"start":60,"end":74,"type":"strong"},{"start":76,"end":85,"type":"strong"},{"start":90,"end":102,"type":"strong"}],"direction":"ltr"}]},"id":"text_block$dbc398b3-0266-4d02-ac43-cd23a411d27f","slice_type":"text_block","slice_label":null}],"context":{}}] 12:["$","div",null,{"className":"max-w-prose","children":[["$","h3","58",{"dir":"$undefined","children":[["đŸŒŠïž Dashboard MĂ©tĂ©o – React & OpenWeatherMap API"]]}],["$","p","72",{"dir":"$undefined","children":[["J’ai conçu un "],["$","strong","61",{"children":[["dashboard mĂ©tĂ©o interactif"]]}],[" en utilisant "],["$","strong","64",{"children":[["React"]]}],[" avec "],["$","strong","67",{"children":[["Vite"]]}],[" pour une performance optimale. Ce projet consomme les donnĂ©es en temps rĂ©el de l’API "],["$","strong","70",{"children":[["OpenWeatherMap"]]}],[" afin d’afficher des prĂ©visions dĂ©taillĂ©es sous une interface moderne et responsive."]]}],["$","p","74",{"dir":"$undefined","children":[["FonctionnalitĂ©s principales :"]]}],["$","ul","97",{"children":[["$","li","79",{"dir":"$undefined","children":[["🔍 "],["$","strong","77",{"children":[["Recherche de villes"]]}],[" avec autocomplĂ©tion"]]}],["$","li","84",{"dir":"$undefined","children":[["đŸ§© "],["$","strong","82",{"children":[["Vue bento"]]}],[" des donnĂ©es mĂ©tĂ©o : tempĂ©rature, pression, humiditĂ©, vent (direction, rafales), ressenti, etc."]]}],["$","li","89",{"dir":"$undefined","children":[["📅 "],["$","strong","87",{"children":[["Timeline verticale"]]}],[" des prĂ©visions horaires"]]}],["$","li","94",{"dir":"$undefined","children":[["🌐 "],["$","strong","92",{"children":[["SystĂšme de favoris"]]}],[" sĂ©curisĂ© avec JWT pour enregistrer les villes prĂ©fĂ©rĂ©es"]]}],["$","li","96",{"dir":"$undefined","children":[["⚙ Architecture modulaire avec microservices : proxy backend, service mĂ©tĂ©o, service d’authentification"]]}]]}],["$","p","111",{"dir":"$undefined","children":[["Ce projet met en avant mes compĂ©tences en "],["$","strong","100",{"children":[["frontend moderne"]]}],[", "],["$","strong","103",{"children":[["gestion d’état"]]}],[", "],["$","strong","106",{"children":[["appel API"]]}],[", et "],["$","strong","109",{"children":[["sĂ©curitĂ© web"]]}],[", tout en proposant une expĂ©rience utilisateur fluide."]]}]]}]