main
html 48 lines 1.6 KB
Raw
1 <!DOCTYPE html>
2 <html lang="en">
3 <head>
4 <meta charset="UTF-8" />
5 <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6 <meta name="color-scheme" content="light dark" />
7 <meta
8 name="description"
9 content="Transform your local services into web-accessible endpoints. Instant access from anywhere."
10 />
11 <meta property="og:title" content="Portal Proxy Gateway" />
12 <meta
13 property="og:description"
14 content="Transform your local services into web-accessible endpoints. Instant access from anywhere."
15 />
16 <meta name="twitter:card" content="summary" />
17 <meta name="twitter:title" content="Portal Proxy Gateway" />
18 <meta
19 name="twitter:description"
20 content="Transform your local services into web-accessible endpoints. Instant access from anywhere."
21 />
22 <link rel="icon" type="image/svg+xml" href="/favicon.svg" />
23 <title>Portal - Local to web. Instant access.</title>
24 <script>
25 (() => {
26 const defaultTheme = "light";
27
28 try {
29 const storedTheme = localStorage.getItem("theme");
30 const theme =
31 storedTheme === "light" || storedTheme === "dark"
32 ? storedTheme
33 : defaultTheme;
34
35 document.documentElement.classList.toggle("dark", theme === "dark");
36 document.documentElement.style.colorScheme = theme;
37 } catch {
38 document.documentElement.style.colorScheme = defaultTheme;
39 }
40 })();
41 </script>
42 </head>
43
44 <body>
45 <div id="root"></div>
46 <script type="module" src="/src/main.tsx"></script>
47 </body>
48 </html>