chore: scaffold local optimizer app
This commit is contained in:
@@ -0,0 +1,22 @@
|
||||
@tailwind base;
|
||||
@tailwind components;
|
||||
@tailwind utilities;
|
||||
|
||||
:root {
|
||||
color-scheme: light;
|
||||
background: #f8fafc;
|
||||
color: #111827;
|
||||
}
|
||||
|
||||
* {
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
body {
|
||||
margin: 0;
|
||||
min-height: 100vh;
|
||||
font-family:
|
||||
Arial,
|
||||
Helvetica,
|
||||
sans-serif;
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
import "./globals.css";
|
||||
|
||||
export const metadata = {
|
||||
title: "GEO Agent Article Optimizer",
|
||||
description: "Local article optimization and QA workflow",
|
||||
};
|
||||
|
||||
export default function RootLayout({ children }: { children: React.ReactNode }) {
|
||||
return (
|
||||
<html lang="zh-CN">
|
||||
<body>{children}</body>
|
||||
</html>
|
||||
);
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
const sections = [
|
||||
"Article Input",
|
||||
"Fact Card",
|
||||
"Optimized Result",
|
||||
"Quality Report",
|
||||
];
|
||||
|
||||
export default function Home() {
|
||||
return (
|
||||
<main className="mx-auto flex min-h-screen w-full max-w-6xl flex-col gap-8 px-6 py-10">
|
||||
<h1 className="text-3xl font-semibold text-slate-950">
|
||||
GEO Agent Article Optimizer
|
||||
</h1>
|
||||
<div className="grid gap-4 md:grid-cols-2">
|
||||
{sections.map((section) => (
|
||||
<section
|
||||
key={section}
|
||||
aria-label={section}
|
||||
className="min-h-48 rounded-lg border border-slate-200 bg-white p-5 shadow-sm"
|
||||
>
|
||||
<h2 className="text-lg font-medium text-slate-900">{section}</h2>
|
||||
</section>
|
||||
))}
|
||||
</div>
|
||||
</main>
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user