1<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width,initial-scale=1"/><title>Remix Race Stack</title><link rel="stylesheet" href="/build/_assets/tailwind-MY2NKCFH.css"/><meta name="color-scheme" content="dark light"/>
1<script> 2// hi there dear reader ð 3// this is how I make certain we avoid a flash of the wrong theme. If you select 4// a theme, then I'll know what you want in the future and you'll not see this 5// script anymore. 6;(() => { 7 const theme = window.matchMedia("(prefers-color-scheme: dark)").matches 8 ? 'dark' 9 : 'light'; 10 const cl = document.documentElement.classList; 11 const themeAlreadyApplied = cl.contains('light') || cl.contains('dark'); 12 if (themeAlreadyApplied) { 13 // this script shouldn't exist if the theme is already applied! 14 console.warn( 15 "Hi there, could you let me know you're seeing this message? Thanks!", 16 ); 17 } else { 18 // cl.add(theme); 19 } 20 const meta = document.querySelector('meta[name=color-scheme]'); 21 if (meta) { 22 if (theme === 'dark') { 23 meta.content = 'dark light'; 24 } else if (theme === 'light') { 25 meta.content = 'light dark'; 26 } 27 } else { 28 console.warn( 29 "Hey, could you let me know you're seeing this message? Thanks!", 30 ); 31 } 32})(); 33</script>
33<style> 34 /* default light, but app-preference is "dark" */ 35 html.dark { 36 light-mode { 37 display: none; 38 } 39 } 40 41 /* default light, and no app-preference */ 42 html:not(.dark) { 43 dark-mode { 44 display: none; 45 } 46 } 47 48 @media (prefers-color-scheme: dark) { 49 /* prefers dark, but app-preference is "light" */ 50 html.light { 51 dark-mode { 52 display: none; 53 } 54 } 55 56 /* prefers dark, and app-preference is "dark" */ 57 html.dark, 58 /* prefers dark and no app-preference */ 59 html:not(.light) { 60 light-mode { 61 display: none; 62 } 63 } 64 } 65</style></head><body class="light"><div class="min-h-screen container relative flex-col items-center justify-center md:grid lg:max-w-none lg:grid-cols-2 lg:px-0"><a class="inline-flex items-center justify-center text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:opacity-50 disabled:pointer-events-none ring-offset-background hover:bg-accent hover:text-accent-foreground h-9 px-3 rounded-md absolute right-4 top-4 md:right-8 md:top-8" href="/register">Register</a><div class="relative hidden h-full flex-col bg-muted p-10 text-white dark:border-r lg:flex"><div class="absolute inset-0 bg-cover blur backdrop-filter" style="background-image:url("https://user-images.githubusercontent.com/43375532/235504302-59de9ece-72b4-4a83-a9a5-edeb61353d8f.png")"></div><div class="relative z-20 flex items-center text-lg"><h1 class="text-center font-extrabold tracking-tight"><span class="block uppercase text-orange-500 drop-shadow-md">Race Stack</span></h1></div><div class="relative z-20 mt-auto"><blockquote class="space-y-2"><p class="text-lg">Check out readme for more information about this project</p></blockquote></div></div><div class="p-8 pt-14 lg:pt-8"><div class="mx-auto flex w-full flex-col justify-center space-y-6 sm:w-[350px]"><div class="flex flex-col space-y-2 text-center"><h1 class="text-2xl font-semibold tracking-tight">Login to your account</h1><p class="text-sm text-muted-foreground">Enter your email below to create your account</p></div><div class="grid gap-6"><form method="post" action="/login"><div class="grid gap-4"><div class="grid gap-1"><label class="text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70" for="email">Email</label><input type="email" class="flex h-10 w-full rounded-md border border-input bg-transparent px-3 py-2 text-sm r
65ing-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50" id="email" placeholder="[email protected]" autoCapitalize="none" autoComplete="email" autoCorrect="off" name="email"/></div><div class="grid gap-1"><label class="text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70" for="password">Password</label><input type="password" class="flex h-10 w-full rounded-md border border-input bg-transparent px-3 py-2 text-sm ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50" id="password" placeholder="********" name="password"/></div><button class="inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:opacity-50 disabled:pointer-events-none ring-offset-background bg-primary text-primary-foreground hover:bg-primary/90 h-10 py-2 px-4">Sign In with Email</button></div></form></div></div></div></div><div role="region" aria-label="Notifications (F8)" tabindex="-1" style="pointer-events:none"><ol tabindex="-1" class="fixed top-0 z-[100] flex max-h-screen w-full flex-col-reverse p-4 sm:bottom-0 sm:right-0 sm:top-auto sm:flex-col md:max-w-[420px]"></ol></div><div id="cookies-simple-with-icon-and-dismiss-button" class="fixed bottom-0 right-0 z-[60] mx-auto w-full p-6 sm:max-w-xl pointer-events-auto opacity-100"><form method="post" action="/action/enable-analytics" class="rounded-xl border border-gray-200 bg-slate-100 p-4 shadow-sm dark:border-gray-700 dark:bg-gray-800"><div class="grid gap-y-3 sm:flex sm:items-center sm:gap-y-0 sm:gap-x-5"><div class="sm:max-w-sm"><h2 class="text-gray-500"><span class="font-semibold text-gray-800 dark:text-gray-200">We use cookies</span> <!-- -->to analyze our traffic and create a smooth user experience.</h2></div><button name="accept-gdpr" value="true" type="submit" class="inline-flex items-center justify-center gap-2 rounded-md border border-transparent bg-orange-500 py-2 px-3 text-sm font-semibold text-white transition-all hover:bg-orange-600 focus:outline-none focus:ring-2 focus:ring-orange-500 focus:ring-offset-2">Accept</button></div></form></div>
65<script>((i, s) => { 66 if (!window.history.state || !window.history.state.key) { 67 let l = Math.random().toString(32).slice(2); 68 window.history.replaceState({ key: l }, ""); 69 } 70 try { 71 let u = JSON.parse(sessionStorage.getItem(i) || "{}")[s || window.history.state.key]; 72 typeof u == "number" && window.scrollTo(0, u); 73 } catch (l) { 74 console.error(l), sessionStorage.removeItem(i); 75 } 76 })("positions", null)</script>
76<link rel="modulepreload" href="/build/manifest-C699889F.js"/><link rel="modulepreload" href="/build/entry.client-S2IUPHTX.js"/><link rel="modulepreload" href="/build/_shared/chunk-T25WUX7R.js"/><link rel="modulepreload" href="/build/_shared/chunk-CBGBUQR3.js"/><link rel="modulepreload" href="/build/_shared/chunk-5HKR6QTR.js"/><link rel="modulepreload" href="/build/_shared/chunk-G5WX4PPA.js"/><link rel="modulepreload" href="/build/_shared/chunk-ZVBZ5RCY.js"/><link rel="modulepreload" href="/build/_shared/chunk-P6WT7FWY.js"/><link rel="modulepreload" href="/build/_shared/chunk-BVXOWNXM.js"/><link rel="modulepreload" href="/build/root-34PMPWZD.js"/><link rel="modulepreload" href="/build/_shared/chunk-S3X6H5PU.js"/><link rel="modulepreload" href="/build/_shared/chunk-LJISLMKN.js"/><link rel="modulepreload" href="/build/_shared/chunk-RHCA6F55.js"/><link rel="modulepreload" href="/build/_shared/chunk-PU35QBFV.js"/><link rel="modulepreload" href="/build/routes/login-HREZPOW3.js"/>
76<script>window.__remixContext = {"state":{"loaderData":{"root":{"theme":null,"toast":null,"ENV":{"POSTHOG_API_KEY":"phc_tLvnn4rCyU6BsGZSIUFHg1SoFgCKyZph5AZVQ7PXHCo","POSTHOG_API_HOST":"https://app.posthog.com"}},"routes/login":null},"actionData":null,"errors":null},"future":{"unstable_cssModules":false,"unstable_cssSideEffectImports":false,"unstable_dev":false,"unstable_postcss":false,"unstable_tailwind":true,"unstable_vanillaExtract":false,"v2_errorBoundary":true,"v2_meta":true,"v2_normalizeFormMethod":true,"v2_routeConvention":true}};</script>
76<script type="module" async="">import "/build/manifest-C699889F.js"; 77import * as route0 from "/build/root-34PMPWZD.js"; 78import * as route1 from "/build/routes/login-HREZPOW3.js"; 79window.__remixRouteModules = {"root":route0,"routes/login":route1}; 80 81import("/build/entry.client-S2IUPHTX.js");</script>
81</body></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.