1import { getEnv } from "waku";
2import { Card } from "../components/Card.tsx";
3
4export default async function HomePage() {
5 // `getEnv` reads the Worker env at request time — the portable way to
6 // reach bindings and env values from RSC page modules. (A top-level
7 // `import { env } from "cloudflare:workers"` would break waku's Node-side
8 // SSG step.)
9 const greeting = getEnv("GREETING") ?? "Hello!";
10 return (
11 <div>
12 <h1 className="text-3xl font-bold">{greeting}</h1>
13 <Card
14 title="Styled with Tailwind CSS"
15 body="This card is a React component styled with Tailwind utilities."
16 />
17 <p className="mt-4 text-slate-600">
18 This page is rendered by the Worker on every request.
19 </p>
20 </div>
21 );
22}
23
24// Dynamic: rendered by the Worker at request time.
25export const getConfig = async () => ({ render: "dynamic" }) as const;