-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.html
More file actions
56 lines (52 loc) · 2.75 KB
/
Copy pathindex.html
File metadata and controls
56 lines (52 loc) · 2.75 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
<!doctype html>
<html lang="en" data-theme="light">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width,initial-scale=1" />
<title>chrome — your Solid desktop</title>
<meta name="description" content="A web-first desktop OS over your Solid pod. Apps as ES modules, real-time via WebSocket Notifications, prefs sync across devices, all on your pod." />
<link rel="icon" type="image/svg+xml" href="favicon.svg">
<link rel="manifest" href="manifest.json">
<link rel="apple-touch-icon" href="icon-192.png">
<meta name="theme-color" content="#10b981">
<link rel="stylesheet" href="./style.css" />
<!-- Importmap: external panes (e.g. solid-apps/pilot's tracker-pane)
bring Preact/htm with them. Mapping these here lets registry panes
load directly without each one bundling its own copy. Hub uses the
same set; keeping them in sync means panes are interchangeable. -->
<script type="importmap">
{
"imports": {
"preact": "https://esm.sh/preact@10.19.0",
"preact/hooks": "https://esm.sh/preact@10.19.0/hooks",
"htm": "https://esm.sh/htm@3.1.1"
}
}
</script>
</head>
<body>
<div id="wallpaper" aria-hidden="true"></div>
<div class="desktop-icons" id="desktop" aria-label="Desktop"></div>
<div class="status-tray" id="status-tray">
<span class="tray-clock" id="tray-clock">—</span>
<span class="tray-desks" id="tray-desks" title="Desks (⌘] / ⌘[)"></span>
<span class="tray-spacer"></span>
<button class="tray-pill" id="tray-launcher" title="Open launcher (⌘Space)">
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" width="14" height="14"><rect x="3" y="3" width="7" height="7" rx="1"/><rect x="14" y="3" width="7" height="7" rx="1"/><rect x="3" y="14" width="7" height="7" rx="1"/><rect x="14" y="14" width="7" height="7" rx="1"/></svg>
</button>
<button class="tray-pill" id="tray-quick" title="Quick settings">
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" width="14" height="14"><path d="M12 2v3M12 19v3M5 5l2 2M17 17l2 2M2 12h3M19 12h3M5 19l2-2M17 7l2-2"/><circle cx="12" cy="12" r="4"/></svg>
</button>
<button class="tray-pill tray-auth" id="tray-auth" title="Sign in">Sign in</button>
</div>
<div class="windows" id="windows"></div>
<div class="shelf" id="shelf">
<div class="shelf-running" id="shelf-running"></div>
</div>
<!-- xlogin: one-tag auth (Solid OIDC + Nostr). Loaded before app.js
so its event listeners are wired before xlogin emits its first
restore event. -->
<script src="https://unpkg.com/xlogin"></script>
<script type="module" src="./src/app.js"></script>
</body>
</html>