Repository navigation
Expand file tree
/
Copy pathindex.html
More file actions
50 lines (50 loc) · 2.11 KB
/
Copy pathindex.html
File metadata and controls
50 lines (50 loc) · 2.11 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="theme-color" content="#0f172a" />
<link rel="manifest" href="/manifest.webmanifest" />
<link rel="icon" type="image/png" href="/icons/icon-192.png" />
<link rel="apple-touch-icon" href="/icons/apple-touch-icon.png" />
<title>ImageForge</title>
<meta
name="description"
content="Analyze, patch and verify Android images locally in your browser."
/>
<!-- Sharing cards. og:url and og:image need the URL the site is actually served from, which is
not the repository, so they are left out until there is one. -->
<meta property="og:type" content="website" />
<meta property="og:title" content="ImageForge" />
<meta
property="og:description"
content="Analyze, patch and verify Android images locally in your browser. No server, no upload, and it never flashes a device."
/>
<meta name="twitter:card" content="summary" />
<script>
(function () {
try {
var stored = localStorage.getItem("imageforge.theme");
var mode = stored === "light" || stored === "dark" || stored === "system" ? stored : "system";
var dark =
mode === "dark" ||
(mode === "system" && window.matchMedia("(prefers-color-scheme: dark)").matches);
document.documentElement.classList.toggle("dark", dark);
document.documentElement.dataset.themeMode = mode;
// The catalogue loads on demand, so the language of the document is set here to keep
// lang correct from the first paint.
var locale = localStorage.getItem("imageforge.locale");
if (locale === "en" || locale === "zh-Hans" || locale === "zh-Hant" || locale === "ja") {
document.documentElement.lang = locale;
}
} catch (error) {
document.documentElement.classList.add("dark");
}
})();
</script>
</head>
<body>
<div id="root"></div>
<script type="module" src="/src/main.tsx"></script>
</body>
</html>