-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.html
More file actions
60 lines (60 loc) · 2.76 KB
/
Copy pathindex.html
File metadata and controls
60 lines (60 loc) · 2.76 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
51
52
53
54
55
56
57
58
59
60
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta
name="description"
content="Train your Go board memory with a focused visualization exercise: study a 9x9 position, hide it, then rebuild the stones from memory."
/>
<title>Go Visualization Trainer</title>
<link rel="canonical" href="https://battermann.github.io/go-visualization-trainer/" />
<link rel="preload" href="%BASE_URL%move.ogg" as="audio" type="audio/ogg" />
<meta property="og:title" content="Go Visualization Trainer for Board Memory Practice" />
<meta
property="og:description"
content="Train your Go board memory with a focused visualization exercise: study a 9x9 position, hide it, then rebuild the stones from memory."
/>
<meta property="og:type" content="website" />
<meta property="og:url" content="https://battermann.github.io/go-visualization-trainer/" />
<meta property="og:image" content="%BASE_URL%og-image.png" />
<meta property="og:image:width" content="1200" />
<meta property="og:image:height" content="630" />
<meta property="og:image:alt" content="Go Visualization Trainer with a 9x9 Go board preview." />
<meta name="twitter:card" content="summary_large_image" />
<meta name="twitter:title" content="Go Visualization Trainer for Board Memory Practice" />
<meta
name="twitter:description"
content="Train your Go board memory with a focused visualization exercise: study a 9x9 position, hide it, then rebuild the stones from memory."
/>
<meta name="twitter:image" content="%BASE_URL%og-image.png" />
<script>
(() => {
try {
const raw = localStorage.getItem("go-visualization-trainer-settings-v1");
const settings = raw ? JSON.parse(raw) : {};
const theme = settings.theme ?? "dark";
const boardStyle = settings.boardStyle === "original" ? "original" : "current";
const resolvedTheme =
theme === "system"
? window.matchMedia("(prefers-color-scheme: light)").matches
? "light"
: "dark"
: theme === "light"
? "light"
: "dark";
document.documentElement.classList.add(`theme-${resolvedTheme}`);
document.documentElement.classList.add(`board-style-${boardStyle}`);
document.documentElement.style.colorScheme = resolvedTheme;
} catch {
document.documentElement.classList.add("theme-dark");
document.documentElement.classList.add("board-style-current");
}
})();
</script>
</head>
<body>
<div id="root"></div>
<script type="module" src="/src/main.tsx"></script>
</body>
</html>