import type {Metadata} from "next";import {notFound} from "next/navigation";import {posts} from "@/lib/tool-data";
export function generateStaticParams(){return posts.map(([slug])=>({slug}));}
export async function generateMetadata({params}:{params:Promise<{slug:string}>}):Promise<Metadata>{const {slug}=await params;const post=posts.find(p=>p[0]===slug);return post?{title:post[1],description:post[2]}:{};}
export default async function Post({params}:{params:Promise<{slug:string}>}){const {slug}=await params;const post=posts.find(p=>p[0]===slug);if(!post)notFound();return <article className="article"><p className="eyebrow">Field note · 6 min read</p><h1>{post[1]}</h1><p>{post[2]} The best creative workflows make the important choices obvious and let the rest fall away.</p><h2>Begin with intention</h2><p>Before choosing a model or visual style, write down what the viewer should feel and what should change by the end of the scene. That simple sentence is a better compass than a long list of cinematic adjectives.</p><h2>Direct the moment</h2><p>Describe the subject, its action, the environment and the camera in that order. Keep the light and color language consistent across related shots. When you iterate, change one variable at a time so you know what improved the result.</p><h2>Protect the rhythm</h2><p>A storyboard is not just a collection of attractive frames. Give each beat a purpose: reveal information, change the emotion or move the action forward. If two shots do the same job, keep the stronger one.</p></article>}
