pub fn CardDemo(allocator: zx.Allocator) zx.Component {
    return (
        <main @allocator={allocator}>
            <Card title="Welcome">
                <p>This is the card content.</p>
                <button>Click me</button>
            </Card>
        </main>
    );
}

const CardProps = struct {
    title: []const u8,
    children: zx.Component,
};

fn Card(allocator: zx.Allocator, props: CardProps) zx.Component {
    return (
        <div @allocator={allocator} class="card">
            <h2>{props.title}</h2>
            <div class="card-body">{props.children}</div>
        </div>
    );
}

const zx = @import("zx");
