robiriu commited on
Commit
9515f4e
·
verified ·
1 Parent(s): 2d8355a

Upload dashboard/src/components/Header.tsx with huggingface_hub

Browse files
Files changed (1) hide show
  1. dashboard/src/components/Header.tsx +59 -9
dashboard/src/components/Header.tsx CHANGED
@@ -1,18 +1,68 @@
1
  export function Header({ healthy }: { healthy: boolean | null }) {
2
  return (
3
- <header style={{ display: "flex", alignItems: "baseline", justifyContent: "space-between" }}>
4
  <div>
5
- <h1 style={{ fontSize: "var(--text-3xl)", letterSpacing: "-0.01em" }}>
6
- GeoForce
 
 
 
7
  </h1>
8
- <p className="muted" style={{ fontSize: "var(--text-base)", marginTop: "var(--space-2)" }}>
9
- Opus 4.7 agent orchestrating an open-source geothermal solver and a physics-informed
10
- CNN surrogate for Indonesian reservoirs.
11
  </p>
12
  </div>
13
- <div style={{ textAlign: "right" }}>
14
- <span className="chip">
15
- {healthy === null ? "checking…" : healthy ? "backend online" : "backend offline"}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
16
  </span>
17
  </div>
18
  </header>
 
1
  export function Header({ healthy }: { healthy: boolean | null }) {
2
  return (
3
+ <header style={{ display: "flex", alignItems: "center", justifyContent: "space-between" }}>
4
  <div>
5
+ <h1 style={{ fontSize: "var(--text-2xl)", letterSpacing: "-0.02em", fontWeight: 700 }}>
6
+ <span style={{ color: "var(--accent)" }}>Geo</span>Force
7
+ <span style={{ fontSize: "var(--text-sm)", fontWeight: 500, color: "var(--fg-subtle)", marginLeft: "var(--space-2)" }}>
8
+ v2.0
9
+ </span>
10
  </h1>
11
+ <p className="muted" style={{ fontSize: "var(--text-sm)", marginTop: "var(--space-1)" }}>
12
+ Dual-engine geothermal platform numerical solver + CNN surrogate with AI agent orchestration
 
13
  </p>
14
  </div>
15
+ <div style={{ display: "flex", alignItems: "center", gap: "var(--space-3)" }}>
16
+ <span
17
+ style={{
18
+ display: "inline-flex",
19
+ alignItems: "center",
20
+ gap: 6,
21
+ padding: "4px 12px",
22
+ fontSize: "var(--text-xs)",
23
+ fontWeight: 500,
24
+ borderRadius: "var(--radius-pill)",
25
+ background: healthy
26
+ ? "rgba(34, 197, 94, 0.1)"
27
+ : healthy === false
28
+ ? "rgba(239, 68, 68, 0.1)"
29
+ : "rgba(255, 255, 255, 0.05)",
30
+ color: healthy
31
+ ? "var(--success)"
32
+ : healthy === false
33
+ ? "var(--danger)"
34
+ : "var(--fg-subtle)",
35
+ border: `1px solid ${
36
+ healthy
37
+ ? "rgba(34, 197, 94, 0.2)"
38
+ : healthy === false
39
+ ? "rgba(239, 68, 68, 0.2)"
40
+ : "var(--border-subtle)"
41
+ }`,
42
+ }}
43
+ >
44
+ <span
45
+ style={{
46
+ width: 6,
47
+ height: 6,
48
+ borderRadius: "50%",
49
+ background: healthy
50
+ ? "var(--success)"
51
+ : healthy === false
52
+ ? "var(--danger)"
53
+ : "var(--fg-subtle)",
54
+ }}
55
+ />
56
+ {healthy === null ? "Connecting" : healthy ? "Online" : "Offline"}
57
+ </span>
58
+ <span
59
+ style={{
60
+ fontSize: "var(--text-xs)",
61
+ color: "var(--fg-subtle)",
62
+ fontWeight: 500,
63
+ }}
64
+ >
65
+ ForceX AI
66
  </span>
67
  </div>
68
  </header>