page.tsx27 lines · main
1import { AiSchemaForm } from './ai-schema-form';
2import { AiSubnav } from '../ai-subnav';
3
4export const metadata = { title: 'ai schema' };
5export const dynamic = 'force-dynamic';
6
7export default async function AiSchemaPage({ params }: { params: Promise<{ id: string }> }) {
8 const { id } = await params;
9 return (
10 <section className="flex flex-col gap-6">
11 <AiSubnav projectId={id} />
12 <header>
13 <h1 className="font-mono text-xl tracking-tight">ai schema</h1>
14 <p className="mt-1 font-mono text-sm text-[var(--color-text-muted)]">
15 describe your data model in plain english. briven&apos;s AI assistant returns a draft{' '}
16 <code>schema.ts</code> you can paste into your project and refine.
17 </p>
18 <p className="mt-2 font-mono text-xs text-[var(--color-text-subtle)]">
19 your prompt is sent to a self-hosted Qwen 2.5-coder model on briven infrastructure — not
20 to any third-party AI provider. prompts and responses are not logged.
21 </p>
22 </header>
23
24 <AiSchemaForm projectId={id} />
25 </section>
26 );
27}