Skip to content

Commit b485158

Browse files
committed
fix(web): dark background on html/body, full-page session, sticky detail header
- Set html/body/#root background to #14110e (no more white on scroll) - Remove AppShell from session replay and live session routes (full page) - Make installation detail header/completion bar sticky with scrollable table
1 parent 5d37677 commit b485158

3 files changed

Lines changed: 17 additions & 6 deletions

File tree

apps/web/src/app.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,10 +29,10 @@ export default function App() {
2929
{/* Protected routes — wrapped in AppShell */}
3030
<Route path="/installations" element={<ProtectedRoute><AppShell><InstallationList /></AppShell></ProtectedRoute>} />
3131
<Route path="/installations/:installationId" element={<ProtectedRoute><AppShell><InstallationDetail /></AppShell></ProtectedRoute>} />
32-
<Route path="/installations/:installationId/sessions/:sessionId" element={<ProtectedRoute><AppShell><SessionReplay /></AppShell></ProtectedRoute>} />
32+
<Route path="/installations/:installationId/sessions/:sessionId" element={<ProtectedRoute><SessionReplay /></ProtectedRoute>} />
3333
<Route path="/installations/:installationId/setup" element={<ProtectedRoute><AppShell><SetupView /></AppShell></ProtectedRoute>} />
3434
<Route path="/installations/:installationId/settings" element={<ProtectedRoute><AppShell><SettingsView /></AppShell></ProtectedRoute>} />
35-
<Route path="/session/:installationId/*" element={<ProtectedRoute><AppShell><SessionView /></AppShell></ProtectedRoute>} />
35+
<Route path="/session/:installationId/*" element={<ProtectedRoute><SessionView /></ProtectedRoute>} />
3636
</Routes>
3737
</BrowserRouter>
3838
</ErrorBoundary>

apps/web/src/features/dashboard/InstallationDetail.tsx

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -58,9 +58,9 @@ export default function InstallationDetail() {
5858
const completionPct = total > 0 ? Math.round((completed / Math.max(sessions.length, 1)) * 100) : 0
5959

6060
return (
61-
<div>
62-
{/* Header + filters */}
63-
<div className="flex justify-between items-end mb-5">
61+
<div className="flex flex-col h-[calc(100vh-56px)]">
62+
{/* Sticky header + filters */}
63+
<div className="shrink-0 flex justify-between items-end mb-5">
6464
<div>
6565
<Overline className="mb-1.5">{'\u25b8'} SESSIONS {'\u00b7'} {total} TOTAL</Overline>
6666
<h1 className="font-mono text-2xl font-bold tracking-[-0.02em]">Session History</h1>
@@ -85,7 +85,7 @@ export default function InstallationDetail() {
8585

8686
{/* Completion bar */}
8787
{!loading && sessions.length > 0 && (
88-
<div className="flex items-center gap-5 px-4 py-3.5 bg-card border border-rule rounded-card mb-5">
88+
<div className="shrink-0 flex items-center gap-5 px-4 py-3.5 bg-card border border-rule rounded-card mb-5">
8989
<div className="flex items-baseline gap-1.5">
9090
<span className="font-mono text-[22px] font-bold">{completionPct}%</span>
9191
<span className="font-mono text-[10px] text-dim tracking-[0.12em] uppercase">completion</span>
@@ -103,6 +103,9 @@ export default function InstallationDetail() {
103103
</div>
104104
)}
105105

106+
{/* Scrollable content */}
107+
<div className="flex-1 min-h-0 overflow-y-auto">
108+
106109
{/* Error */}
107110
{error && (
108111
<div className="mb-4 px-4 py-3 bg-danger/8 border border-danger/20 rounded-card text-danger text-sm">
@@ -205,6 +208,8 @@ export default function InstallationDetail() {
205208
)}
206209
</>
207210
)}
211+
212+
</div>{/* end scrollable */}
208213
</div>
209214
)
210215
}

apps/web/src/index.css

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
@import "tailwindcss";
22

3+
html, body, #root {
4+
background: #14110e;
5+
color: #f2ede4;
6+
min-height: 100vh;
7+
}
8+
39
/* JetBrains Mono — primary monospace font */
410
@import url('https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600;700&display=swap');
511

0 commit comments

Comments
 (0)