feat: bootstrap walking skeleton

This commit is contained in:
ginnoir
2026-06-11 17:06:52 -05:00
commit ec8f857845
44 changed files with 6677 additions and 0 deletions
+27
View File
@@ -0,0 +1,27 @@
import { useEffect } from 'react';
import { gameRuntime } from '../state/runtime';
import { ActionPanel } from './ActionPanel';
import { EventLog } from './EventLog';
import { ResourceBar } from './ResourceBar';
/**
* Walking-skeleton view shell. Boots the runtime once on mount; everything else
* renders from the Zustand store the runtime feeds. M1 turns this into a game.
*/
export function App() {
useEffect(() => {
void gameRuntime.boot();
}, []);
return (
<main className="mx-auto flex min-h-dvh max-w-2xl flex-col gap-5 px-4 py-8 text-slate-100">
<header>
<h1 className="font-bold text-2xl tracking-tight">Idlegame</h1>
<p className="text-slate-500 text-sm">Walking skeleton M0 scaffold.</p>
</header>
<ResourceBar />
<ActionPanel />
<EventLog />
</main>
);
}