import { NextConfig } from "next";
import { buildSchema } from "@/lib/content";
const config: NextConfig = {
output: "static",
images: { formats: ["image/avif"] },
i18n: { locales: ["cs", "en"] },
};
export async function generateStaticParams() {
const pages = await getAll("pages");
return pages.map((p) => ({
slug: p.slug,
locale: p.locale,
}));
}async function deploy(app: Application) {
const health = await runChecks({
lighthouse: { perf: 98, a11y: 100 },
security: "strict",
seo: "optimized",
});
if (health.passed) {
await cdn.invalidate(app.routes);
await notify(app.team, {
status: "live",
url: app.domain,
});
}
return { ...app, health };
}interface DesignSystem {
colors: { brand: "#10b981"; accent: "#f59e0b" };
fonts: { sans: "Inter"; mono: "JetBrains Mono" };
radius: "sm" | "md" | "lg" | "xl" | "2xl";
breakpoints: { sm: 640; md: 768; lg: 1024; xl: 1440 };
}
const theme = defineTokens<DesignSystem>({
darkMode: "class",
cssVariables: true,
});