1<!DOCTYPE html> 2<html lang="en"> 3 <head> 4
4<script> 5 self["MonacoEnvironment"] = (function (paths) { 6 return { 7 globalAPI: false, 8 getWorkerUrl : function (moduleId, label) { 9 var result = paths[label]; 10 if (/^((http:)|(https:)|(file:)|(\/\/))/.test(result)) { 11 var currentUrl = String(window.location); 12 var currentOrigin = currentUrl.substr(0, currentUrl.length - window.location.hash.length - window.location.search.length - window.location.pathname.length); 13 if (result.substring(0, currentOrigin.length) !== currentOrigin) { 14 var js = '/*' + label + '*/importScripts("' + result + '");'; 15 var blob = new Blob([js], { type: 'application/javascript' }); 16 return URL.createObjectURL(blob); 17 } 18 } 19 return result; 20 } 21 }; 22 })({ 23 "editorWorkerService": "/monacoeditorwork/editor.worker.bundle.js", 24 "typescript": "/monacoeditorwork/ts.worker.bundle.js", 25 "json": "/monacoeditorwork/json.worker.bundle.js", 26 "css": "/monacoeditorwork/css.worker.bundle.js", 27 "html": "/monacoeditorwork/html.worker.bundle.js", 28 "javascript": "/monacoeditorwork/ts.worker.bundle.js", 29 "less": "/monacoeditorwork/css.worker.bundle.js", 30 "scss": "/monacoeditorwork/css.worker.bundle.js", 31 "handlebars": "/monacoeditorwork/html.worker.bundle.js", 32 "razor": "/monacoeditorwork/html.worker.bundle.js" 33}); 34 </script>
34 35 <!-- Runtime config â must execute before the Vite module scripts read 36 window.__APP_CONFIG__. `defer` keeps that order (deferred classic 37 scripts and module scripts run in document order after parsing) while 38 unblocking the HTML parser, so asset preloads start immediately 39 instead of stalling ~160ms (p75) on this API round trip. 40 Back on the .js path: Render's extension-keyed edge cache rule twice 41 pinned a wrong body under this URL despite `no-store` (2026-08-20 and 42 2026-08-24); Render has since removed that cache rule for us, so the 43 suffix is safe again. If poisoning recurs: bump the `?v=` cache key, 44 or switch the src to the extension-less /api/frontend-config route 45 (kept serving as an escape hatch). --> 46
46<script defer="" src="/api/frontend-config.js?v=3"> 47 </script>
47 48 <!-- Usercentrics CMP --> 49
49<script type="application/javascript"> 50 var isBypassEnabled = document.cookie.split(';').some(function(cookie) { 51 return cookie.trim().indexOf('no_cmp=') === 0; 52 }); 53 var UC_UI_SUPPRESS_CMP_DISPLAY = isBypassEnabled; 54 </script>
54 55
55<script async="" src="https://accounts.google.com/gsi/client"> 56 </script>
56 57 <meta charset="utf-8"/> 58 <!-- Platform favicon: a real multi-size ICO (16/32/48) of the current sun 59 mark, served from public/. This is the ONLY rel="icon" link, and it 60 must stay that way â App.js rewrites the first match for backoffice. 61 Crawlers and link scrapers read this tag (and probe /favicon.ico 62 directly) with no JS, so the brand has to be correct statically. --> 63 <link href="https://qtrypzzcjebvfcihiynt.supabase.co/storage/v1/object/public/base44-prod/public/697b938f4eb740452d8b294e/6b1f0eca4_Votretextedeparagraphe.png" rel="icon" sizes="any"/> 64
64<script> 65 // Pre-paint theme stamp for the demo Appearance (demo-appearance-themes) 66 // cohort: on a hard load the theme is applied by React (DemoThemeApplier) 67 // only after auth resolves, so the document boots light â a white flash, 68 // then light route skeletons (the FOUC this removes). DemoThemeApplier 69 // persists 'demo-display-theme-applied' only while the feature is active, 70 // so every other cohort (flag-off, native, backoffice, runtime apps) 71 // never sets it and this stays a no-op. React stays the source of truth 72 // after mount: DemoThemeApplier 73 // re-applies or clears these exact attributes. Keys must stay byte-identical 74 // with components/settings/useDemoTheme.ts â BOOT_STAMP_CONTRACT there is 75 // asserted against this file by useDemoTheme.spec.ts, so update both. 76 // 77 // Kill-switch caveat: the marker is written while the feature is active and 78 // only cleared once /me resolves. On the FIRST load after a user loses the 79 // flag â or after the kill switch is flipped mid-incident â this still 80 // stamps dark, then React settles to light: one darkâlight flash, which 81 // self-heals from the next load on. Flipping the switch does not repaint 82 // already-open tabs pre-paint; it collapses them on their next load. 83 try { 84 if (localStorage.getItem('demo-display-theme-applied') === '1') { 85 var demoTheme = localStorage.getItem('demo-display-theme'); 86 var demoDark = demoTheme === 'dark' || 87 (demoTheme === 'system' && window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches); 88 if (demoDark) { 89 var demoRoot = document.documentElement; 90 demoRoot.setAttribute('data-ds', 'base44'); 91 demoRoot.setAttribute('data-theme', 'dark'); 92 demoRoot.classList.add('dark'); 93 // Kill the pre-CSS white document flash; the app paints over it. 94 demoRoot.style.backgroundColor = '#09090b'; 95 } 96 } 97 } catch (e) {} 98 </script>
98 99 <meta content="width=device-width, initial-scale=1.0, viewport-fit=cover" name="viewport"/> 100 <meta content="#000000" name="theme-color"/> 101 <meta content="VintManager est une application de gestion pour revendeurs sur Vinted. Elle permet de suivre facilement lâinventaire, les ventes et les marges, dâaccéder à des statistiques détaillées dynamiques, et de gérer ses articles de manière sécurisée. Les utilisateurs gratuits bénéficient dâun accès limité, tandis que les abonnés Premium profitent de fonctionnalités avancées, de rapports personnalisés et de statistiques complètes pour optimiser leurs performances de revente." name="description"/> 102 <meta content="yes" name="mobile-web-app-capable"/> 103 <meta content="black" name="apple-mobile-web-app-status-bar-style"/> 104 <meta content="VintManager" name="apple-mobile-web-app-title"/> 105 <link href="https://qtrypzzcjebvfcihiynt.supabase.co/storage/v1/object/public/base44-prod/public/697b938f4eb740452d8b294e/6b1f0eca4_Votretextedeparagraphe.png" rel="apple-touch-icon" sizes="180x180"/> 106 <link href="https://vintmanager.base44.app/manifest.json" rel="manifest"/> 107 <title> 108 VintManager 109 </title> 110 <!-- Open Graph / Facebook --> 111 <meta content="website" property="og:type"/> 112 <meta content="https://vintmanager.base44.app/reset-password" property="og:url"/> 113 <meta content="VintManager" property="og:title"/> 114 <meta content="VintManager" property="og:site_name"/> 115 <meta content="VintManager est une application de gestion pour revendeurs sur Vinted. Elle permet de suivre facilement lâinventaire, les ventes et les marges, dâaccéder à des statistiques détaillées dynamiques, et de gérer ses articles de manière sécurisée. Les utilisateurs gratuits bénéficient dâun accès limité, tandis que les abonnés Premium profitent de fonctionnalités avancées, de rapports personnalisés et de statistiques complètes pour optimiser leurs performances de revente." property="og:description"/> 116 <meta content="https://qtrypzzcjebvfcihiynt.supabase.co/storage/v1/render/image/public/base44-prod/public/697b938f4eb740452d8b294e/6b1f0eca4_Votretextedeparagraphe.png?width=1200&height=630&resize=contain" property="og:image"/> 117 <meta content="1200" property="og:image:width"/> 118 <meta content="630" property="og:image:height"/> 119 <meta content="Base44 link preview" property="og:image:alt"/> 120 <!-- Twitter --> 121 <meta content="summary_large_image" name="twitter:card"/> 122 <meta content="https://vintmanager.base44.app/reset-password" name="twitter:url"/> 123 <meta content="VintManager" name="twitter:title"/> 124 <meta content="VintManager est une application de gestion pour revendeurs sur Vinted. Elle permet de suivre facilement lâinventaire, les ventes et les marges, dâaccéder à des statistiques détaillées dynamiques, et de gérer ses articles de manière sécurisée. Les utilisateurs gratuits bénéficient dâun accès limité, tandis que les abonnés Premium profitent de fonctionnalités avancées, de rapports personnalisés et de statistiques complètes pour optimiser leurs performances de revente." name="twitter:description"/> 125 <meta content="https://qtrypzzcjebvfcihiynt.supabase.co/storage/v1/render/image/public/base44-prod/public/697b938f4eb740452d8b294e/6b1f0eca4_Votretextedeparagraphe.png?width=1200&height=630&resize=contain" name="twitter:image"/> 126 <meta content="Base44 link preview" name="twitter:image:alt"/> 127
127<script crossorigin="" src="/static/index-D96eRrlv.js" type="module"> 128 </script>
128 129 <link crossorigin="" href="/static/rolldown-runtime-C0FnF6B9.js" rel="modulepreload"/> 130 <link crossorigin="" href="/static/runtime-QtgwY_nV.js" rel="modulepreload"/> 131 <link crossorigin="" href="/static/backend-CC2lXJt_.js" rel="modulepreload"/> 132 <link crossorigin="" href="/static/vendor-react-Ccu8BlQU.js" rel="modulepreload"/> 133 <link crossorigin="" href="/static/preload-helper-BZ1Pz5am.js" rel="modulepreload"/> 134 <link crossorigin="" href="/static/vendor-data-D4IPhVFk.js" rel="modulepreload"/> 135 <link crossorigin="" href="/static/errorReporting-C8KVtz7O.js" rel="modulepreload"/> 136 <link crossorigin="" href="/static/i18n-pkgydE_c.js" rel="modulepreload"/> 137 <link crossorigin="" href="/static/vendor-utils-C8Ev1Z53.js" rel="modulepreload"/> 138 <link crossorigin="" href="/static/mixpanelUtils-CtEUaRBr.js" rel="modulepreload"/> 139 <link crossorigin="" href="/static/bridge-Cq_Szqk4.js" rel="modulepreload"/> 140 <link crossorigin="" href="/static/axiosClient-DnVO32-R.js" rel="modulepreload"/> 141 <link crossorigin="" href="/static/domainValidation-FMKryCR2.js" rel="modulepreload"/> 142 <link crossorigin="" href="/static/vendor-ui-C97dD7rv.js" rel="modulepreload"/> 143 <link crossorigin="" href="/static/base-DLGBKAFy.js" rel="modulepreload"/> 144 <link crossorigin="" href="/static/AuthAPI-C4-6oDY6.js" rel="modulepreload"/> 145 <link crossorigin="" href="/static/useDesignSystem-CehPfIkU.js" rel="modulepreload"/> 146 <link crossorigin="" href="/static/logoutReturnPath-HjtsxsFd.js" rel="modulepreload"/> 147 <link crossorigin="" href="/static/AuthContext-BwFq1txD.js" rel="modulepreload"/> 148 <link crossorigin="" href="/static/dist-XEn2s_wS.js" rel="modulepreload"/> 149 <link crossorigin="" href="/static/featureFlags-DkMoeXMw.js" rel="modulepreload"/> 150 <link crossorigin="" href="/static/useHideNativeBottomTabs-C_i-vpDp.js" rel="modulepreload"/> 151 <link crossorigin="" href="/static/native-mobile-app-DhQk5gto.js" rel="modulepreload"/> 152 <link crossorigin="" href="/static/prop-types-D9WxI36-.js" rel="modulepreload"/> 153 <link crossorigin="" href="/static/esm-BcdKrTNz.js" rel="modulepreload"/> 154 <link crossorigin="" href="/static/use-mobile-CaU875wk.js" rel="modulepreload"/> 155 <link crossorigin="" href="/static/create-zustand-store-BANj7DdM.js" rel="modulepreload"/> 156 <link crossorigin="" href="/static/persist-to-storage-BFlqrUp_.js" rel="modulepreload"/> 157 <link crossorigin="" href="/static/actions.middleware-D_eRWZoy.js" rel="modulepreload"/> 158 <link crossorigin="" href="/static/WorkspaceAPI-NXczXWIe.js" rel="modulepreload"/> 159 <link crossorigin="" href="/static/useWorkspaceUnlockState-CC8XdN-l.js" rel="modulepreload"/> 160 <link crossorigin="" href="/static/WorkspaceContext-SU9dVSL0.js" rel="modulepreload"/> 161 <link crossorigin="" href="/static/usePlatform-C2eTT50O.js" rel="modulepreload"/> 162 <link crossorigin="" href="/static/react-BanELCRV.js" rel="modulepreload"/> 163 <link crossorigin="" href="/static/useFeatureFlags-BRZVRkZF.js" rel="modulepreload"/> 164 <link crossorigin="" href="/static/utils-CrD3uvwO.js" rel="modulepreload"/> 165 <link crossorigin="" href="/static/toast-8IacIur2.js" rel="modulepreload"/> 166 <link crossorigin="" href="/static/index-BGSEU5bQ.css" rel="stylesheet"/> 167
167<script id="base44-runtime-tailwind-config"> 168 window.tailwind = window.tailwind || {}; window.tailwind.config = { darkMode: 'class' }; 169 </script>
169 170
170<script id="base44-runtime-tailwind-cdn" src="https://cdn.tailwindcss.com"> 171 </script>
171 172
172<script> 173 (function () { 174 var titles = {"/": "VintManager", "/login": "Login | VintManager", "/register": "Register | VintManager", "/forgot-password": "Forgot Password | VintManager", "/reset-password": "Reset Password | VintManager", "/abonnement": "Abonnement | VintManager", "/activatepremiumsecure7k9xm2qp8rj4nh6lw3tz1vy5bc9": "Activate Premium Secure7k9Xm2Qp8Rj4Nh6Lw3Tz1Vy | VintManager", "/activate-premium-secure7k9-xm2-qp8-rj4-nh6-lw3-tz1-vy5-bc9": "Activate Premium Secure7k9Xm2Qp8Rj4Nh6Lw3Tz1Vy | VintManager", "/assistantia": "Assistant IA | VintManager", "/assistant-ia": "Assistant IA | VintManager", "/boutiques": "Boutiques | VintManager", "/centre-aide": "Centre Aide | VintManager", "/centreaide": "Centre Aide | VintManager", "/communaute": "Communaute | VintManager", "/definir-boutique-par-defaut": "Definir Boutique Par Defaut | VintManager", "/definirboutiquepardefaut": "Definir Boutique Par Defaut | VintManager", "/depenses": "Depenses | VintManager", "/fiscalite": "Fiscalite | VintManager", "/guide": "Guide | VintManager", "/inventaire": "Inventaire | VintManager", "/outils": "Outils | VintManager", "/parametres": "Parametres | VintManager", "/rapports": "Rapports | VintManager", "/statistiques": "Statistiques | VintManager", "/stripe-success": "Stripe Success | VintManager", "/stripesuccess": "Stripe Success | VintManager", "/synchronisations": "Synchronisations | VintManager", "/workflow": "Workflow | VintManager", "/dashboard": "VintManager"}; 175 // PascalCase boundaries -> "-", mirroring _PASCAL_BOUNDARY_RE without lookbehind 176 // (old Safari fails to PARSE a lookbehind, taking the whole script down). 177 var dashed = function (s) { 178 return s.replace(/([a-z0-9])([A-Z])/g, "$1-$2").replace(/([A-Z])([A-Z][a-z])/g, "$1-$2"); 179 }; 180 var decode = function (s) { 181 // A %2F inside ONE segment must not become a structural separator: /blog/foo%2Fbar is a 182 // dynamic slug, and letting it split would match a static /blog/foo/bar and write ITS title. 183 try { var d = decodeURIComponent(s); return d.indexOf("/") < 0 ? d : s; } catch (e) { return s; } 184 }; 185 var segments = function (path) { return path.split("/").filter(Boolean).map(decode); }; 186 var norm = function (path) { 187 var parts = segments(path).map(function (s) { return dashed(s).toLowerCase(); }); 188 return parts.length ? "/" + parts.join("/") : "/"; 189 }; 190 var lastPath = location.pathname, written = document.title, on = true; 191 var sync = function () { 192 // Path only: a hash/query change is the same page, and the SDK strips its own auth 193 // params with replaceState -- neither must clobber a server-rendered title in place. 194 if (!on || location.pathname === lastPath) return; 195 lastPath = location.pathname; 196 if (document.title !== written) { on = false; return; } 197 // Write ONLY a title the map proves. An unmapped path is a dynamic route (/blog/:slug) the 198 // map cannot carry, and writing a placeholder there is destructive, not merely vague: the 199 // prerender worker runs no setUserAgent, so its capture browser reads as human and executes 200 // this script, and coordinator.js's settle wait explicitly tolerates a full navigation -- 201 // a redirect landing on an unmapped path would bake the placeholder into the stored 202 // snapshot. Leaving the title alone degrades to today's behavior instead. 203 // Exact lookup only. A dash-stripped retry here would let a genuinely different /set-up 204 // claim /setup: the map carries a dash-free key only where a PascalCase boundary put the 205 // dashes there, and the client cannot tell the two apart. The map emits every reachable 206 // shape per segment instead (_client_url_variants). 207 var title = titles[norm(location.pathname)]; 208 if (title === undefined) return; 209 document.title = title; 210 // Re-read: the setter stores verbatim but the getter strips and collapses whitespace, so 211 // keeping the assigned string would make the next sync() read our own write as the app's. 212 written = document.title; 213 }; 214 var wrap = function (fn) { 215 // The history entry is already pushed by the time sync() runs, so a throw here would 216 // surface inside the host app's router and break navigation. This is injected into apps 217 // we cannot test, so it swallows rather than trusting the trace. 218 return function () { 219 var r = fn.apply(this, arguments);
220 try { sync(); } catch (e) {} 221 return r; 222 }; 223 }; 224 history.pushState = wrap(history.pushState); 225 history.replaceState = wrap(history.replaceState); 226 window.addEventListener("popstate", sync); 227})(); 228 </script>
228 229 <link href="https://vintmanager.base44.app/reset-password" rel="canonical"/> 230
230<script data-seo-source="builder" type="application/ld+json"> 231 {"@context": "https://schema.org", "@type": "BreadcrumbList", "itemListElement": [{"@type": "ListItem", "position": 1, "name": "Home", "item": "https://vintmanager.base44.app/"}, {"@type": "ListItem", "position": 2, "name": "reset password", "item": "https://vintmanager.base44.app/reset-password"}]} 232 </script>
232 233
233<script async="true" data-app-id="697b938f4eb740452d8b294e" data-platform-url="https://app.base44.com" src="/static/js/badge.js"> 234 </script>
234 235 </head> 236 <body> 237 <noscript> 238 You need to enable JavaScript to run this app. 239 </noscript> 240 <div id="root"> 241 <div data-seo-source="builder" id="seo-snapshot" style="position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;"> 242 <main> 243 <header> 244 <h1> 245 VintManager 246 </h1> 247 <p> 248 VintManager est une application de gestion pour revendeurs sur Vinted. Elle permet de suivre facilement lâinventaire, les ventes et les marges, dâaccéder à des statistiques détaillées dynamiques, et de gérer ses articles de manière sécurisée. Les utilisateurs gratuits bénéficient dâun accès limité, tandis que les abonnés Premium profitent de fonctionnalités avancées, de rapports personnalisés et de statistiques complètes pour optimiser leurs performances de revente. 249 </p> 250 </header> 251 <nav aria-label="Pages"> 252 <h2> 253 Pages 254 </h2> 255 <ul> 256 <li> 257 <a href="/"> 258 Dashboard 259 </a> 260 </li> 261 <li> 262 <a href="/login"> 263 Login 264 </a> 265 </li> 266 <li> 267 <a href="/register"> 268 Register 269 </a> 270 </li> 271 <li> 272 <a href="/forgot-password"> 273 Forgot Password 274 </a> 275 </li> 276 <li> 277 <a href="/reset-password"> 278 Reset Password 279 </a> 280 </li> 281 <li> 282 <a href="/Abonnement"> 283 Abonnement 284 </a> 285 â Abonnement on VintManager. VintManager est une application de gestion pour revendeurs sur Vinted. 286 </li> 287 <li> 288 <a href="/ActivatePremiumSecure7k9Xm2Qp8Rj4Nh6Lw3Tz1Vy5Bc9"> 289 Activate Premium Secure7k9 Xm2 Qp8 Rj4 Nh6 Lw3 Tz1 Vy5 Bc9 290 </a> 291 â Activate Premium Secure7k9Xm2Qp8Rj4Nh6Lw3Tz1Vy5Bc9 on VintManager. VintManager est une application de gestion pour revendeurs sur Vinted. 292 </li> 293 <li> 294 <a href="/AssistantIA"> 295 Assistant IA 296 </a> 297 â Assistant IA on VintManager. VintManager est une application de gestion pour revendeurs sur Vinted. 298 </li> 299 <li> 300 <a href="/Boutiques"> 301 Boutiques 302 </a> 303 â Boutiques on VintManager. VintManager est une application de gestion pour revendeurs sur Vinted. 304 </li> 305 <li> 306 <a href="/CentreAide"> 307 Centre Aide 308 </a> 309 â Centre Aide on VintManager. VintManager est une application de gestion pour revendeurs sur Vinted. 310 </li> 311 <li> 312 <a href="/Communaute"> 313 Communaute 314 </a> 315 â Communaute on VintManager. VintManager est une application de gestion pour revendeurs sur Vinted. 316 </li> 317 <li> 318 <a href="/DefinirBoutiqueParDefaut"> 319 Definir Boutique Par Defaut 320 </a> 321 â Definir Boutique Par Defaut on VintManager. VintManager est une application de gestion pour revendeurs sur Vinted. 322 </li> 323 <li> 324 <a href="/Depenses"> 325 Depenses 326 </a> 327 â Depenses on VintManager. VintManager est une application de gestion pour revendeurs sur Vinted. 328 </li> 329 <li> 330 <a href="/Fiscalite"> 331 Fiscalite 332 </a> 333 â Fiscalite on VintManager. VintManager est une application de gestion pour revendeurs sur Vinted. 334 </li> 335 <li> 336 <a href="/Guide"> 337 Guide 338 </a> 339 â Guide on VintManager. VintManager est une application de gestion pour revendeurs sur Vinted. 340 </li> 341 <li> 342 <a href="/Inventaire"> 343 Inventaire 344 </a> 345 â Inventaire on VintManager. VintManager est une application de gestion pour revendeurs sur Vinted. 346 </li> 347 <li> 348 <a href="/Outils"> 349 Outils 350 </a> 351 â Outils on VintManager. VintManager est une application de gestion pour revendeurs sur Vinted. 352 </li> 353 <li> 354 <a href="/Parametres"> 355 Parametres 356 </a> 357 â Parametres on VintManager. VintManager est une application de gestion pour revendeurs sur Vinted. 358 </li> 359 <li> 360 <a href="/Rapports"> 361 Rapports 362 </a> 363 â Rapports on VintManager. VintManager est une application de gestion pour revendeurs sur Vinted. 364 </li> 365 <li> 366 <a href="/Statistiques"> 367 Statistiques 368 </a> 369 â Statistiques on VintManager. VintManager est une application de gestion pour revendeurs sur Vinted. 370 </li> 371 <li> 372 <a href="/StripeSuccess"> 373 Stripe Success 374 </a> 375 â Stripe Success on VintManager. VintManager est une application de gestion pour revendeurs sur Vinted. 376 </li> 377 <li> 378 <a href="/Synchronisations"> 379 Synchronisations 380 </a> 381 â Synchronisations on VintManager. VintManager est une application de gestion pour revendeurs sur Vinted. 382 </li> 383 <li> 384 <a href="/Workflow"> 385 Workflow 386 </a> 387 â Workflow on VintManager. VintManager est une application de gestion pour revendeurs sur Vinted. 388 </li> 389 </ul> 390 </nav> 391 </main> 392 </div> 393 </div> 394 </body> 395</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.