Initial commit

This commit is contained in:
OpenCode Test
2025-12-24 10:50:10 -08:00
commit e1a64aa092
70 changed files with 5827 additions and 0 deletions

40
apps/web/app/page.tsx Normal file
View File

@@ -0,0 +1,40 @@
"use client";
import Link from "next/link";
import { getAppName } from "@tline/config";
import { useState } from "react";
import { MediaPanel } from "./components/MediaPanel";
import { TimelineTree } from "./components/TimelineTree";
export default function HomePage() {
const [selectedDayIso, setSelectedDayIso] = useState<string | null>(null);
return (
<main style={{ padding: 16, display: "grid", gap: 16 }}>
<header>
<h1 style={{ marginTop: 0 }}>{getAppName()}</h1>
<ul>
<li>
<Link href="/admin">Admin</Link>
</li>
<li>
<a href="/api/healthz">API health</a>
</li>
</ul>
</header>
<div
style={{
display: "grid",
gridTemplateColumns: "2fr 1fr",
gap: 16,
alignItems: "start",
}}
>
<TimelineTree onSelectDay={setSelectedDayIso} />
<MediaPanel selectedDayIso={selectedDayIso} />
</div>
</main>
);
}